Merge branch 'master' of ssh://blackrabbit23@cockatrice.git.sourceforge.net/gitroot/cockatrice into marcus
This commit is contained in:
commit
bb72443acb
9 changed files with 496 additions and 179 deletions
|
@ -407,5 +407,6 @@ void CardDatabase::updateDatabasePath(const QString &path)
|
||||||
cardDatabasePath = settings.value("carddatabase").toString();
|
cardDatabasePath = settings.value("carddatabase").toString();
|
||||||
} else
|
} else
|
||||||
cardDatabasePath = path;
|
cardDatabasePath = path;
|
||||||
loadFromFile(cardDatabasePath);
|
if (!cardDatabasePath.isEmpty())
|
||||||
|
loadFromFile(cardDatabasePath);
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,22 +33,22 @@
|
||||||
<context>
|
<context>
|
||||||
<name>CardInfoWidget</name>
|
<name>CardInfoWidget</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="17"/>
|
<location filename="../src/cardinfowidget.cpp" line="93"/>
|
||||||
<source>Name:</source>
|
<source>Name:</source>
|
||||||
<translation>Name:</translation>
|
<translation>Name:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="22"/>
|
<location filename="../src/cardinfowidget.cpp" line="94"/>
|
||||||
<source>Mana cost:</source>
|
<source>Mana cost:</source>
|
||||||
<translation>Manakosten:</translation>
|
<translation>Manakosten:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="27"/>
|
<location filename="../src/cardinfowidget.cpp" line="95"/>
|
||||||
<source>Card type:</source>
|
<source>Card type:</source>
|
||||||
<translation>Kartentyp:</translation>
|
<translation>Kartentyp:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="32"/>
|
<location filename="../src/cardinfowidget.cpp" line="96"/>
|
||||||
<source>P / T:</source>
|
<source>P / T:</source>
|
||||||
<translation>S/W:</translation>
|
<translation>S/W:</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -64,17 +64,17 @@
|
||||||
<context>
|
<context>
|
||||||
<name>DeckList</name>
|
<name>DeckList</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="315"/>
|
<location filename="../src/decklist.cpp" line="316"/>
|
||||||
<source>Load deck</source>
|
<source>Load deck</source>
|
||||||
<translation>Deck laden</translation>
|
<translation>Deck laden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="338"/>
|
<location filename="../src/decklist.cpp" line="341"/>
|
||||||
<source>Save deck</source>
|
<source>Save deck</source>
|
||||||
<translation>Deck speichern</translation>
|
<translation>Deck speichern</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="378"/>
|
<location filename="../src/decklist.cpp" line="383"/>
|
||||||
<source>Caching card pictures...</source>
|
<source>Caching card pictures...</source>
|
||||||
<translation>Kartenbilder werden gecached...</translation>
|
<translation>Kartenbilder werden gecached...</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -209,27 +209,27 @@
|
||||||
<context>
|
<context>
|
||||||
<name>DlgSettings</name>
|
<name>DlgSettings</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="302"/>
|
<location filename="../src/dlg_settings.cpp" line="329"/>
|
||||||
<source>Settings</source>
|
<source>Settings</source>
|
||||||
<translation>Einstellungen</translation>
|
<translation>Einstellungen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="304"/>
|
<location filename="../src/dlg_settings.cpp" line="331"/>
|
||||||
<source>General</source>
|
<source>General</source>
|
||||||
<translation>Allgemeines</translation>
|
<translation>Allgemeines</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="305"/>
|
<location filename="../src/dlg_settings.cpp" line="334"/>
|
||||||
<source>Appearance</source>
|
<source>Appearance</source>
|
||||||
<translation>Erscheinungsbild</translation>
|
<translation>Erscheinungsbild</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="306"/>
|
<location filename="../src/dlg_settings.cpp" line="337"/>
|
||||||
<source>Messages</source>
|
<source>Messages</source>
|
||||||
<translation>Nachrichten</translation>
|
<translation>Nachrichten</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="308"/>
|
<location filename="../src/dlg_settings.cpp" line="339"/>
|
||||||
<source>&Close</source>
|
<source>&Close</source>
|
||||||
<translation>S&chließen</translation>
|
<translation>S&chließen</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -262,7 +262,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="26"/>
|
<location filename="../src/game.cpp" line="26"/>
|
||||||
<source>Ctrl+U</source>
|
<source>Ctrl+U</source>
|
||||||
<translation>STRG+U</translation>
|
<translation>Ctrl+U</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="29"/>
|
<location filename="../src/game.cpp" line="29"/>
|
||||||
|
@ -292,7 +292,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="36"/>
|
<location filename="../src/game.cpp" line="36"/>
|
||||||
<source>Ctrl+L</source>
|
<source>Ctrl+L</source>
|
||||||
<translation>STRG+L</translation>
|
<translation>Ctrl+L</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="39"/>
|
<location filename="../src/game.cpp" line="39"/>
|
||||||
|
@ -302,7 +302,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="40"/>
|
<location filename="../src/game.cpp" line="40"/>
|
||||||
<source>Ctrl+S</source>
|
<source>Ctrl+S</source>
|
||||||
<translation>STRG+S</translation>
|
<translation>Ctrl+S</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="42"/>
|
<location filename="../src/game.cpp" line="42"/>
|
||||||
|
@ -312,7 +312,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="43"/>
|
<location filename="../src/game.cpp" line="43"/>
|
||||||
<source>Ctrl+D</source>
|
<source>Ctrl+D</source>
|
||||||
<translation>STRG+D</translation>
|
<translation>Ctrl+D</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="45"/>
|
<location filename="../src/game.cpp" line="45"/>
|
||||||
|
@ -322,7 +322,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="47"/>
|
<location filename="../src/game.cpp" line="47"/>
|
||||||
<source>Ctrl+E</source>
|
<source>Ctrl+E</source>
|
||||||
<translation>STRG+E</translation>
|
<translation>Ctrl+E</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="48"/>
|
<location filename="../src/game.cpp" line="48"/>
|
||||||
|
@ -332,7 +332,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="49"/>
|
<location filename="../src/game.cpp" line="49"/>
|
||||||
<source>Ctrl+I</source>
|
<source>Ctrl+I</source>
|
||||||
<translation>STRG+I</translation>
|
<translation>Ctrl+I</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="52"/>
|
<location filename="../src/game.cpp" line="52"/>
|
||||||
|
@ -342,7 +342,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/game.cpp" line="53"/>
|
<location filename="../src/game.cpp" line="53"/>
|
||||||
<source>Ctrl+T</source>
|
<source>Ctrl+T</source>
|
||||||
<translation>STRG+T</translation>
|
<translation>Ctrl+T</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>&Edit messages...</source>
|
<source>&Edit messages...</source>
|
||||||
|
@ -543,45 +543,46 @@
|
||||||
<context>
|
<context>
|
||||||
<name>GeneralSettingsPage</name>
|
<name>GeneralSettingsPage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="93"/>
|
<location filename="../src/dlg_settings.cpp" line="106"/>
|
||||||
<location filename="../src/dlg_settings.cpp" line="104"/>
|
|
||||||
<location filename="../src/dlg_settings.cpp" line="117"/>
|
<location filename="../src/dlg_settings.cpp" line="117"/>
|
||||||
|
<location filename="../src/dlg_settings.cpp" line="130"/>
|
||||||
|
<location filename="../src/dlg_settings.cpp" line="143"/>
|
||||||
<source>Choose path</source>
|
<source>Choose path</source>
|
||||||
<translation>Pfad auswählen</translation>
|
<translation>Pfad auswählen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="139"/>
|
<location filename="../src/dlg_settings.cpp" line="165"/>
|
||||||
<source>Personal settings</source>
|
<source>Personal settings</source>
|
||||||
<translation>Persönliche Einstellungen</translation>
|
<translation>Persönliche Einstellungen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="140"/>
|
<location filename="../src/dlg_settings.cpp" line="166"/>
|
||||||
<source>Language:</source>
|
<source>Language:</source>
|
||||||
<translation>Sprache:</translation>
|
<translation>Sprache:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="141"/>
|
<location filename="../src/dlg_settings.cpp" line="167"/>
|
||||||
<source>Paths</source>
|
<source>Paths</source>
|
||||||
<translation>Pfade</translation>
|
<translation>Pfade</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="142"/>
|
<location filename="../src/dlg_settings.cpp" line="168"/>
|
||||||
<source>Decks directory:</source>
|
<source>Decks directory:</source>
|
||||||
<translation>Verzeichnis mit Decklisten:</translation>
|
<translation>Verzeichnis mit Decklisten:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="143"/>
|
<location filename="../src/dlg_settings.cpp" line="169"/>
|
||||||
<source>Pictures directory:</source>
|
<source>Pictures directory:</source>
|
||||||
<translation>Verzeichnis mit Bilddateien:</translation>
|
<translation>Verzeichnis mit Bilddateien:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="144"/>
|
<location filename="../src/dlg_settings.cpp" line="170"/>
|
||||||
<source>Path to card database:</source>
|
<source>Path to card database:</source>
|
||||||
<translation>Pfad zur Kartendatenbank:</translation>
|
<translation>Pfad zur Kartendatenbank:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="20"/>
|
<location filename="../src/dlg_settings.cpp" line="20"/>
|
||||||
<location filename="../src/dlg_settings.cpp" line="88"/>
|
<location filename="../src/dlg_settings.cpp" line="101"/>
|
||||||
<source>English</source>
|
<source>English</source>
|
||||||
<translation>Deutsch</translation>
|
<translation>Deutsch</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -604,77 +605,77 @@
|
||||||
<translation>&Verbinden...</translation>
|
<translation>&Verbinden...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="187"/>
|
<location filename="../src/window_main.cpp" line="186"/>
|
||||||
<source>&Disconnect</source>
|
<source>&Disconnect</source>
|
||||||
<translation>Verbindung &trennen</translation>
|
<translation>Verbindung &trennen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="190"/>
|
<location filename="../src/window_main.cpp" line="187"/>
|
||||||
<source>&Restart game...</source>
|
<source>&Restart game...</source>
|
||||||
<translation>Spiel neu sta&rten...</translation>
|
<translation>Spiel neu sta&rten...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="191"/>
|
<location filename="../src/window_main.cpp" line="188"/>
|
||||||
<source>F2</source>
|
<source>F2</source>
|
||||||
<translation>F2</translation>
|
<translation>F2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="194"/>
|
<location filename="../src/window_main.cpp" line="189"/>
|
||||||
<source>&Leave game</source>
|
<source>&Leave game</source>
|
||||||
<translation>Spiel ver&lassen</translation>
|
<translation>Spiel ver&lassen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="197"/>
|
<location filename="../src/window_main.cpp" line="190"/>
|
||||||
<source>&Deck editor</source>
|
<source>&Deck editor</source>
|
||||||
<translation>&Deck-Editor</translation>
|
<translation>&Deck-Editor</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="199"/>
|
<location filename="../src/window_main.cpp" line="191"/>
|
||||||
<source>&Full screen</source>
|
<source>&Full screen</source>
|
||||||
<translation>&Vollbild</translation>
|
<translation>&Vollbild</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="200"/>
|
<location filename="../src/window_main.cpp" line="192"/>
|
||||||
<source>Ctrl+F</source>
|
<source>Ctrl+F</source>
|
||||||
<translation>STRG+F</translation>
|
<translation>Ctrl+F</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="203"/>
|
<location filename="../src/window_main.cpp" line="193"/>
|
||||||
<source>&Settings...</source>
|
<source>&Settings...</source>
|
||||||
<translation>&Einstellungen...</translation>
|
<translation>&Einstellungen...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="205"/>
|
<location filename="../src/window_main.cpp" line="194"/>
|
||||||
<source>&Exit</source>
|
<source>&Exit</source>
|
||||||
<translation>&Beenden</translation>
|
<translation>&Beenden</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="208"/>
|
<location filename="../src/window_main.cpp" line="195"/>
|
||||||
<source>Close most recent zone view</source>
|
<source>Close most recent zone view</source>
|
||||||
<translation>Letzte Zonenansicht schließen</translation>
|
<translation>Letzte Zonenansicht schließen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="209"/>
|
<location filename="../src/window_main.cpp" line="196"/>
|
||||||
<source>Esc</source>
|
<source>Esc</source>
|
||||||
<translation>Esc</translation>
|
<translation>Esc</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="216"/>
|
<location filename="../src/window_main.cpp" line="198"/>
|
||||||
<source>&Game</source>
|
<source>&Game</source>
|
||||||
<translation>Spi&el</translation>
|
<translation>Spi&el</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="231"/>
|
<location filename="../src/window_main.cpp" line="199"/>
|
||||||
<source>&Actions</source>
|
<source>&Actions</source>
|
||||||
<translation>&Aktionen</translation>
|
<translation>&Aktionen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="233"/>
|
<location filename="../src/window_main.cpp" line="200"/>
|
||||||
<source>&Card</source>
|
<source>&Card</source>
|
||||||
<translation>&Karte</translation>
|
<translation>&Karte</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="257"/>
|
<location filename="../src/window_main.cpp" line="202"/>
|
||||||
<source>&Say:</source>
|
<source>&Say:</source>
|
||||||
<translation>&Sagen:</translation>
|
<translation>&Sagen:</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -805,12 +806,12 @@
|
||||||
<context>
|
<context>
|
||||||
<name>MessagesSettingsPage</name>
|
<name>MessagesSettingsPage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="214"/>
|
<location filename="../src/dlg_settings.cpp" line="241"/>
|
||||||
<source>&Add</source>
|
<source>&Add</source>
|
||||||
<translation>&Hinzufügen</translation>
|
<translation>&Hinzufügen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="215"/>
|
<location filename="../src/dlg_settings.cpp" line="242"/>
|
||||||
<source>&Remove</source>
|
<source>&Remove</source>
|
||||||
<translation>&Entfernen</translation>
|
<translation>&Entfernen</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -823,12 +824,12 @@
|
||||||
<translation type="obsolete">Entfernen</translation>
|
<translation type="obsolete">Entfernen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="197"/>
|
<location filename="../src/dlg_settings.cpp" line="224"/>
|
||||||
<source>Add message</source>
|
<source>Add message</source>
|
||||||
<translation>Nachricht hinzufügen</translation>
|
<translation>Nachricht hinzufügen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="197"/>
|
<location filename="../src/dlg_settings.cpp" line="224"/>
|
||||||
<source>Message:</source>
|
<source>Message:</source>
|
||||||
<translation>Nachricht:</translation>
|
<translation>Nachricht:</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -924,27 +925,27 @@
|
||||||
<context>
|
<context>
|
||||||
<name>QObject</name>
|
<name>QObject</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="34"/>
|
<location filename="../src/decklist.cpp" line="35"/>
|
||||||
<source>Maindeck</source>
|
<source>Maindeck</source>
|
||||||
<translation>Hauptdeck</translation>
|
<translation>Hauptdeck</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="36"/>
|
<location filename="../src/decklist.cpp" line="37"/>
|
||||||
<source>Sideboard</source>
|
<source>Sideboard</source>
|
||||||
<translation>Sideboard</translation>
|
<translation>Sideboard</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="295"/>
|
<location filename="../src/decklist.cpp" line="296"/>
|
||||||
<source>Cockatrice decks (*.cod)</source>
|
<source>Cockatrice decks (*.cod)</source>
|
||||||
<translation>Cockatrice Decks (*.cod)</translation>
|
<translation>Cockatrice Decks (*.cod)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="296"/>
|
<location filename="../src/decklist.cpp" line="297"/>
|
||||||
<source>Plain text decks (*.dec *.mwDeck)</source>
|
<source>Plain text decks (*.dec *.mwDeck)</source>
|
||||||
<translation>Text Decks (*.dec *.mwDeck)</translation>
|
<translation>Text Decks (*.dec *.mwDeck)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="297"/>
|
<location filename="../src/decklist.cpp" line="298"/>
|
||||||
<source>All files (*.*)</source>
|
<source>All files (*.*)</source>
|
||||||
<translation>Alle Dateien (*.*)</translation>
|
<translation>Alle Dateien (*.*)</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1017,7 +1018,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_deckeditor.cpp" line="102"/>
|
<location filename="../src/window_deckeditor.cpp" line="102"/>
|
||||||
<source>Ctrl+Q</source>
|
<source>Ctrl+Q</source>
|
||||||
<translation>STRG+Q</translation>
|
<translation>Ctrl+Q</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_deckeditor.cpp" line="105"/>
|
<location filename="../src/window_deckeditor.cpp" line="105"/>
|
||||||
|
@ -1042,7 +1043,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_deckeditor.cpp" line="123"/>
|
<location filename="../src/window_deckeditor.cpp" line="123"/>
|
||||||
<source>Ctrl+M</source>
|
<source>Ctrl+M</source>
|
||||||
<translation>STRG+M</translation>
|
<translation>Ctrl+M</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_deckeditor.cpp" line="124"/>
|
<location filename="../src/window_deckeditor.cpp" line="124"/>
|
||||||
|
@ -1052,7 +1053,7 @@
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_deckeditor.cpp" line="126"/>
|
<location filename="../src/window_deckeditor.cpp" line="126"/>
|
||||||
<source>Ctrl+N</source>
|
<source>Ctrl+N</source>
|
||||||
<translation>STRG+N</translation>
|
<translation>Ctrl+N</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_deckeditor.cpp" line="127"/>
|
<location filename="../src/window_deckeditor.cpp" line="127"/>
|
||||||
|
|
|
@ -32,22 +32,22 @@
|
||||||
<context>
|
<context>
|
||||||
<name>CardInfoWidget</name>
|
<name>CardInfoWidget</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="17"/>
|
<location filename="../src/cardinfowidget.cpp" line="93"/>
|
||||||
<source>Name:</source>
|
<source>Name:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="22"/>
|
<location filename="../src/cardinfowidget.cpp" line="94"/>
|
||||||
<source>Mana cost:</source>
|
<source>Mana cost:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="27"/>
|
<location filename="../src/cardinfowidget.cpp" line="95"/>
|
||||||
<source>Card type:</source>
|
<source>Card type:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/cardinfowidget.cpp" line="32"/>
|
<location filename="../src/cardinfowidget.cpp" line="96"/>
|
||||||
<source>P / T:</source>
|
<source>P / T:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -55,17 +55,17 @@
|
||||||
<context>
|
<context>
|
||||||
<name>DeckList</name>
|
<name>DeckList</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="315"/>
|
<location filename="../src/decklist.cpp" line="316"/>
|
||||||
<source>Load deck</source>
|
<source>Load deck</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="338"/>
|
<location filename="../src/decklist.cpp" line="341"/>
|
||||||
<source>Save deck</source>
|
<source>Save deck</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="378"/>
|
<location filename="../src/decklist.cpp" line="383"/>
|
||||||
<source>Caching card pictures...</source>
|
<source>Caching card pictures...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -173,27 +173,27 @@
|
||||||
<context>
|
<context>
|
||||||
<name>DlgSettings</name>
|
<name>DlgSettings</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="302"/>
|
<location filename="../src/dlg_settings.cpp" line="329"/>
|
||||||
<source>Settings</source>
|
<source>Settings</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="304"/>
|
<location filename="../src/dlg_settings.cpp" line="331"/>
|
||||||
<source>General</source>
|
<source>General</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="305"/>
|
<location filename="../src/dlg_settings.cpp" line="334"/>
|
||||||
<source>Appearance</source>
|
<source>Appearance</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="306"/>
|
<location filename="../src/dlg_settings.cpp" line="337"/>
|
||||||
<source>Messages</source>
|
<source>Messages</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="308"/>
|
<location filename="../src/dlg_settings.cpp" line="339"/>
|
||||||
<source>&Close</source>
|
<source>&Close</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -499,45 +499,46 @@
|
||||||
<context>
|
<context>
|
||||||
<name>GeneralSettingsPage</name>
|
<name>GeneralSettingsPage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="93"/>
|
<location filename="../src/dlg_settings.cpp" line="106"/>
|
||||||
<location filename="../src/dlg_settings.cpp" line="104"/>
|
|
||||||
<location filename="../src/dlg_settings.cpp" line="117"/>
|
<location filename="../src/dlg_settings.cpp" line="117"/>
|
||||||
|
<location filename="../src/dlg_settings.cpp" line="130"/>
|
||||||
|
<location filename="../src/dlg_settings.cpp" line="143"/>
|
||||||
<source>Choose path</source>
|
<source>Choose path</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="139"/>
|
<location filename="../src/dlg_settings.cpp" line="165"/>
|
||||||
<source>Personal settings</source>
|
<source>Personal settings</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="140"/>
|
<location filename="../src/dlg_settings.cpp" line="166"/>
|
||||||
<source>Language:</source>
|
<source>Language:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="141"/>
|
<location filename="../src/dlg_settings.cpp" line="167"/>
|
||||||
<source>Paths</source>
|
<source>Paths</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="142"/>
|
<location filename="../src/dlg_settings.cpp" line="168"/>
|
||||||
<source>Decks directory:</source>
|
<source>Decks directory:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="143"/>
|
<location filename="../src/dlg_settings.cpp" line="169"/>
|
||||||
<source>Pictures directory:</source>
|
<source>Pictures directory:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="144"/>
|
<location filename="../src/dlg_settings.cpp" line="170"/>
|
||||||
<source>Path to card database:</source>
|
<source>Path to card database:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="20"/>
|
<location filename="../src/dlg_settings.cpp" line="20"/>
|
||||||
<location filename="../src/dlg_settings.cpp" line="88"/>
|
<location filename="../src/dlg_settings.cpp" line="101"/>
|
||||||
<source>English</source>
|
<source>English</source>
|
||||||
<translation>English</translation>
|
<translation>English</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -560,77 +561,77 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="187"/>
|
<location filename="../src/window_main.cpp" line="186"/>
|
||||||
<source>&Disconnect</source>
|
<source>&Disconnect</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="190"/>
|
<location filename="../src/window_main.cpp" line="187"/>
|
||||||
<source>&Restart game...</source>
|
<source>&Restart game...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="191"/>
|
<location filename="../src/window_main.cpp" line="188"/>
|
||||||
<source>F2</source>
|
<source>F2</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="194"/>
|
<location filename="../src/window_main.cpp" line="189"/>
|
||||||
<source>&Leave game</source>
|
<source>&Leave game</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="197"/>
|
<location filename="../src/window_main.cpp" line="190"/>
|
||||||
<source>&Deck editor</source>
|
<source>&Deck editor</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="199"/>
|
<location filename="../src/window_main.cpp" line="191"/>
|
||||||
<source>&Full screen</source>
|
<source>&Full screen</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="200"/>
|
<location filename="../src/window_main.cpp" line="192"/>
|
||||||
<source>Ctrl+F</source>
|
<source>Ctrl+F</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="203"/>
|
<location filename="../src/window_main.cpp" line="193"/>
|
||||||
<source>&Settings...</source>
|
<source>&Settings...</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="205"/>
|
<location filename="../src/window_main.cpp" line="194"/>
|
||||||
<source>&Exit</source>
|
<source>&Exit</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="208"/>
|
<location filename="../src/window_main.cpp" line="195"/>
|
||||||
<source>Close most recent zone view</source>
|
<source>Close most recent zone view</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="209"/>
|
<location filename="../src/window_main.cpp" line="196"/>
|
||||||
<source>Esc</source>
|
<source>Esc</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="216"/>
|
<location filename="../src/window_main.cpp" line="198"/>
|
||||||
<source>&Game</source>
|
<source>&Game</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="231"/>
|
<location filename="../src/window_main.cpp" line="199"/>
|
||||||
<source>&Actions</source>
|
<source>&Actions</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="233"/>
|
<location filename="../src/window_main.cpp" line="200"/>
|
||||||
<source>&Card</source>
|
<source>&Card</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/window_main.cpp" line="257"/>
|
<location filename="../src/window_main.cpp" line="202"/>
|
||||||
<source>&Say:</source>
|
<source>&Say:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -761,22 +762,22 @@
|
||||||
<context>
|
<context>
|
||||||
<name>MessagesSettingsPage</name>
|
<name>MessagesSettingsPage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="214"/>
|
<location filename="../src/dlg_settings.cpp" line="241"/>
|
||||||
<source>&Add</source>
|
<source>&Add</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="215"/>
|
<location filename="../src/dlg_settings.cpp" line="242"/>
|
||||||
<source>&Remove</source>
|
<source>&Remove</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="197"/>
|
<location filename="../src/dlg_settings.cpp" line="224"/>
|
||||||
<source>Add message</source>
|
<source>Add message</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/dlg_settings.cpp" line="197"/>
|
<location filename="../src/dlg_settings.cpp" line="224"/>
|
||||||
<source>Message:</source>
|
<source>Message:</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -872,27 +873,27 @@
|
||||||
<context>
|
<context>
|
||||||
<name>QObject</name>
|
<name>QObject</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="34"/>
|
<location filename="../src/decklist.cpp" line="35"/>
|
||||||
<source>Maindeck</source>
|
<source>Maindeck</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="36"/>
|
<location filename="../src/decklist.cpp" line="37"/>
|
||||||
<source>Sideboard</source>
|
<source>Sideboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="295"/>
|
<location filename="../src/decklist.cpp" line="296"/>
|
||||||
<source>Cockatrice decks (*.cod)</source>
|
<source>Cockatrice decks (*.cod)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="296"/>
|
<location filename="../src/decklist.cpp" line="297"/>
|
||||||
<source>Plain text decks (*.dec *.mwDeck)</source>
|
<source>Plain text decks (*.dec *.mwDeck)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/decklist.cpp" line="297"/>
|
<location filename="../src/decklist.cpp" line="298"/>
|
||||||
<source>All files (*.*)</source>
|
<source>All files (*.*)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
while read; do
|
|
||||||
filename=`echo $REPLY | cut '-d,' -f 1`
|
|
||||||
edition=`echo $REPLY | cut '-d,' -f 2`
|
|
||||||
editionLong=`echo $REPLY | cut '-d,' -f 3`
|
|
||||||
|
|
||||||
wget http://www.crystalkeep.com/magic/rules/oracle/oracle-$filename.txt
|
|
||||||
mv oracle-$filename.txt "${edition}_${editionLong}.txt"
|
|
||||||
done
|
|
|
@ -1,67 +0,0 @@
|
||||||
10,10E,Tenth Edition
|
|
||||||
ar,ARB,Alara Reborn
|
|
||||||
cf,CFX,Conflux
|
|
||||||
sa,ALA,Shards of Alara
|
|
||||||
et,EVE,Eventide
|
|
||||||
sm,SHM,Shadowmoor
|
|
||||||
mt,MOR,Morningtide
|
|
||||||
lo,LRW,Lorwyn
|
|
||||||
9th,9E,Ninth Edition
|
|
||||||
8th,8E,Eighth Edition
|
|
||||||
fs,FUT,Future Sight
|
|
||||||
pc,PLC,Planar Chaos
|
|
||||||
ts,TSP,Time Spiral
|
|
||||||
cs,CS,Coldsnap
|
|
||||||
di,DIS,Dissension
|
|
||||||
gp,GP,Guildpact
|
|
||||||
ra,RAV,Ravnica
|
|
||||||
sk,SOK,Saviors of Kamigawa
|
|
||||||
bk,BOK,Betrayers of Kamigawa
|
|
||||||
ck,CHK,Champions of Kamigawa
|
|
||||||
fd,FD,Fifth Dawn
|
|
||||||
ds,DS,Darksteel
|
|
||||||
mr,MR,Mirrodin
|
|
||||||
sc,SC,Scourge
|
|
||||||
le,LE,Legions
|
|
||||||
on,ON,Onslaught
|
|
||||||
7th,7E,Seventh Edition
|
|
||||||
6th,6E,Sixth Edition
|
|
||||||
5th,5E,Fifth Edition
|
|
||||||
4th,4E,Fourth Edition
|
|
||||||
rv,R,Revised Edition
|
|
||||||
lu,U,Unlimited Edition
|
|
||||||
lu,B,Limited Edition
|
|
||||||
ju,JU,Judgment
|
|
||||||
to,TO,Torment
|
|
||||||
od,OD,Odyssey
|
|
||||||
ap,AP,Apocalypse
|
|
||||||
ps,PS,Planeshift
|
|
||||||
in,IN,Invasion
|
|
||||||
py,PY,Prophecy
|
|
||||||
ne,NE,Nemesis
|
|
||||||
mm,MM,Mercadian Masques
|
|
||||||
ud,UD,Urza's Destiny
|
|
||||||
ul,UL,Urza's Legacy
|
|
||||||
us,US,Urza's Saga
|
|
||||||
ex,EX,Exodus
|
|
||||||
sh,SH,Stronghold
|
|
||||||
te,TE,Tempest
|
|
||||||
wl,WL,Weatherlight
|
|
||||||
vi,VI,Visions
|
|
||||||
mi,MI,Mirage
|
|
||||||
al,AL,Alliances
|
|
||||||
hl,HL,Homelands
|
|
||||||
ia,IA,Ice Age
|
|
||||||
ch,CH,Chronicles
|
|
||||||
fe,FE,Fallen Empires
|
|
||||||
dk,DK,The Dark
|
|
||||||
lg,LG,Legends
|
|
||||||
aq,AQ,Antiquities
|
|
||||||
an,AN,Arabian Nights
|
|
||||||
pt,PT,Portal
|
|
||||||
pt2,P2,Portal: Second Age
|
|
||||||
pt3,P3,Portal: Three Kingdoms
|
|
||||||
st,ST,Starter
|
|
||||||
st2,ST2K,Starter 2000
|
|
||||||
ug,UG,Unglued
|
|
||||||
uh,UNH,Unhinged
|
|
10
oracle/oracle.pro
Normal file
10
oracle/oracle.pro
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
TEMPLATE = app
|
||||||
|
TARGET =
|
||||||
|
DEPENDPATH += . src
|
||||||
|
INCLUDEPATH += . src ../cockatrice/src
|
||||||
|
MOC_DIR = build
|
||||||
|
OBJECTS_DIR = build
|
||||||
|
QT += network svg
|
||||||
|
|
||||||
|
HEADERS += src/oracleimporter.h ../cockatrice/src/carddatabase.h
|
||||||
|
SOURCES += src/main.cpp src/oracleimporter.cpp ../cockatrice/src/carddatabase.cpp
|
12
oracle/src/main.cpp
Normal file
12
oracle/src/main.cpp
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
#include <QApplication>
|
||||||
|
#include "oracleimporter.h"
|
||||||
|
|
||||||
|
int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
QApplication app(argc, argv);
|
||||||
|
|
||||||
|
OracleImporter importer;
|
||||||
|
importer.downloadNextFile();
|
||||||
|
|
||||||
|
return app.exec();
|
||||||
|
}
|
328
oracle/src/oracleimporter.cpp
Normal file
328
oracle/src/oracleimporter.cpp
Normal file
|
@ -0,0 +1,328 @@
|
||||||
|
#include "oracleimporter.h"
|
||||||
|
#include <QtGui>
|
||||||
|
#include <QtNetwork>
|
||||||
|
|
||||||
|
OracleImporter::OracleImporter()
|
||||||
|
: setIndex(-1)
|
||||||
|
{
|
||||||
|
setsToDownload << SetToDownload("10E", "Tenth Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-10.txt");
|
||||||
|
setsToDownload << SetToDownload("ARB", "Alara Reborn", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ar.txt");
|
||||||
|
setsToDownload << SetToDownload("CFX", "Conflux", "http://www.crystalkeep.com/magic/rules/oracle/oracle-cf.txt");
|
||||||
|
setsToDownload << SetToDownload("ALA", "Shards of Alara", "http://www.crystalkeep.com/magic/rules/oracle/oracle-sa.txt");
|
||||||
|
setsToDownload << SetToDownload("EVE", "Eventide", "http://www.crystalkeep.com/magic/rules/oracle/oracle-et.txt");
|
||||||
|
setsToDownload << SetToDownload("SHM", "Shadowmoor", "http://www.crystalkeep.com/magic/rules/oracle/oracle-sm.txt");
|
||||||
|
setsToDownload << SetToDownload("MOR", "Morningtide", "http://www.crystalkeep.com/magic/rules/oracle/oracle-mt.txt");
|
||||||
|
setsToDownload << SetToDownload("LRW", "Lorwyn", "http://www.crystalkeep.com/magic/rules/oracle/oracle-lo.txt");
|
||||||
|
setsToDownload << SetToDownload("9E", "Ninth Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-9th.txt");
|
||||||
|
setsToDownload << SetToDownload("8E", "Eighth Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-8th.txt");
|
||||||
|
setsToDownload << SetToDownload("FUT", "Future Sight", "http://www.crystalkeep.com/magic/rules/oracle/oracle-fs.txt");
|
||||||
|
setsToDownload << SetToDownload("PLC", "Planar Chaos", "http://www.crystalkeep.com/magic/rules/oracle/oracle-pc.txt");
|
||||||
|
setsToDownload << SetToDownload("TSP", "Time Spiral", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ts.txt");
|
||||||
|
setsToDownload << SetToDownload("CS", "Coldsnap", "http://www.crystalkeep.com/magic/rules/oracle/oracle-cs.txt");
|
||||||
|
setsToDownload << SetToDownload("DIS", "Dissension", "http://www.crystalkeep.com/magic/rules/oracle/oracle-di.txt");
|
||||||
|
setsToDownload << SetToDownload("GP", "Guildpact", "http://www.crystalkeep.com/magic/rules/oracle/oracle-gp.txt");
|
||||||
|
setsToDownload << SetToDownload("RAV", "Ravnica", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ra.txt");
|
||||||
|
setsToDownload << SetToDownload("SOK", "Saviors of Kamigawa", "http://www.crystalkeep.com/magic/rules/oracle/oracle-sk.txt");
|
||||||
|
setsToDownload << SetToDownload("BOK", "Betrayers of Kamigawa", "http://www.crystalkeep.com/magic/rules/oracle/oracle-bk.txt");
|
||||||
|
setsToDownload << SetToDownload("CHK", "Champions of Kamigawa", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ck.txt");
|
||||||
|
setsToDownload << SetToDownload("FD", "Fifth Dawn", "http://www.crystalkeep.com/magic/rules/oracle/oracle-fd.txt");
|
||||||
|
setsToDownload << SetToDownload("DS", "Darksteel", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ds.txt");
|
||||||
|
setsToDownload << SetToDownload("MR", "Mirrodin", "http://www.crystalkeep.com/magic/rules/oracle/oracle-mr.txt");
|
||||||
|
setsToDownload << SetToDownload("SC", "Scourge", "http://www.crystalkeep.com/magic/rules/oracle/oracle-sc.txt");
|
||||||
|
setsToDownload << SetToDownload("LE", "Legions", "http://www.crystalkeep.com/magic/rules/oracle/oracle-le.txt");
|
||||||
|
setsToDownload << SetToDownload("ON", "Onslaught", "http://www.crystalkeep.com/magic/rules/oracle/oracle-on.txt");
|
||||||
|
setsToDownload << SetToDownload("7E", "Seventh Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-7th.txt");
|
||||||
|
setsToDownload << SetToDownload("6E", "Sixth Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-6th.txt");
|
||||||
|
setsToDownload << SetToDownload("5E", "Fifth Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-5th.txt");
|
||||||
|
setsToDownload << SetToDownload("4E", "Fourth Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-4th.txt");
|
||||||
|
setsToDownload << SetToDownload("R", "Revised Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-rv.txt");
|
||||||
|
setsToDownload << SetToDownload("U", "Unlimited Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-lu.txt");
|
||||||
|
setsToDownload << SetToDownload("B", "Limited Edition", "http://www.crystalkeep.com/magic/rules/oracle/oracle-lu.txt");
|
||||||
|
setsToDownload << SetToDownload("JU", "Judgment", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ju.txt");
|
||||||
|
setsToDownload << SetToDownload("TO", "Torment", "http://www.crystalkeep.com/magic/rules/oracle/oracle-to.txt");
|
||||||
|
setsToDownload << SetToDownload("OD", "Odyssey", "http://www.crystalkeep.com/magic/rules/oracle/oracle-od.txt");
|
||||||
|
setsToDownload << SetToDownload("AP", "Apocalypse", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ap.txt");
|
||||||
|
setsToDownload << SetToDownload("PS", "Planeshift", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ps.txt");
|
||||||
|
setsToDownload << SetToDownload("IN", "Invasion", "http://www.crystalkeep.com/magic/rules/oracle/oracle-in.txt");
|
||||||
|
setsToDownload << SetToDownload("PY", "Prophecy", "http://www.crystalkeep.com/magic/rules/oracle/oracle-py.txt");
|
||||||
|
setsToDownload << SetToDownload("NE", "Nemesis", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ne.txt");
|
||||||
|
setsToDownload << SetToDownload("MM", "Mercadian Masques", "http://www.crystalkeep.com/magic/rules/oracle/oracle-mm.txt");
|
||||||
|
setsToDownload << SetToDownload("UD", "Urza's Destiny", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ud.txt");
|
||||||
|
setsToDownload << SetToDownload("UL", "Urza's Legacy", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ul.txt");
|
||||||
|
setsToDownload << SetToDownload("US", "Urza's Saga", "http://www.crystalkeep.com/magic/rules/oracle/oracle-us.txt");
|
||||||
|
setsToDownload << SetToDownload("EX", "Exodus", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ex.txt");
|
||||||
|
setsToDownload << SetToDownload("SH", "Stronghold", "http://www.crystalkeep.com/magic/rules/oracle/oracle-sh.txt");
|
||||||
|
setsToDownload << SetToDownload("TE", "Tempest", "http://www.crystalkeep.com/magic/rules/oracle/oracle-te.txt");
|
||||||
|
setsToDownload << SetToDownload("WL", "Weatherlight", "http://www.crystalkeep.com/magic/rules/oracle/oracle-wl.txt");
|
||||||
|
setsToDownload << SetToDownload("VI", "Visions", "http://www.crystalkeep.com/magic/rules/oracle/oracle-vi.txt");
|
||||||
|
setsToDownload << SetToDownload("MI", "Mirage", "http://www.crystalkeep.com/magic/rules/oracle/oracle-mi.txt");
|
||||||
|
setsToDownload << SetToDownload("AL", "Alliances", "http://www.crystalkeep.com/magic/rules/oracle/oracle-al.txt");
|
||||||
|
setsToDownload << SetToDownload("HL", "Homelands", "http://www.crystalkeep.com/magic/rules/oracle/oracle-hl.txt");
|
||||||
|
setsToDownload << SetToDownload("IA", "Ice Age", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ia.txt");
|
||||||
|
setsToDownload << SetToDownload("CH", "Chronicles", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ch.txt");
|
||||||
|
setsToDownload << SetToDownload("FE", "Fallen Empires", "http://www.crystalkeep.com/magic/rules/oracle/oracle-fe.txt");
|
||||||
|
setsToDownload << SetToDownload("DK", "The Dark", "http://www.crystalkeep.com/magic/rules/oracle/oracle-dk.txt");
|
||||||
|
setsToDownload << SetToDownload("LG", "Legends", "http://www.crystalkeep.com/magic/rules/oracle/oracle-lg.txt");
|
||||||
|
setsToDownload << SetToDownload("AQ", "Antiquities", "http://www.crystalkeep.com/magic/rules/oracle/oracle-aq.txt");
|
||||||
|
setsToDownload << SetToDownload("AN", "Arabian Nights", "http://www.crystalkeep.com/magic/rules/oracle/oracle-an.txt");
|
||||||
|
setsToDownload << SetToDownload("PT", "Portal", "http://www.crystalkeep.com/magic/rules/oracle/oracle-pt.txt");
|
||||||
|
setsToDownload << SetToDownload("P2", "Portal: Second Age", "http://www.crystalkeep.com/magic/rules/oracle/oracle-pt2.txt");
|
||||||
|
setsToDownload << SetToDownload("P3", "Portal: Three Kingdoms", "http://www.crystalkeep.com/magic/rules/oracle/oracle-pt3.txt");
|
||||||
|
setsToDownload << SetToDownload("ST", "Starter", "http://www.crystalkeep.com/magic/rules/oracle/oracle-st.txt");
|
||||||
|
setsToDownload << SetToDownload("ST2K", "Starter 2000", "http://www.crystalkeep.com/magic/rules/oracle/oracle-st2.txt");
|
||||||
|
setsToDownload << SetToDownload("PR", "Promo cards", "pr.txt");
|
||||||
|
setsToDownload << SetToDownload("UG", "Unglued", "http://www.crystalkeep.com/magic/rules/oracle/oracle-ug.txt");
|
||||||
|
setsToDownload << SetToDownload("UNH", "Unhinged", "http://www.crystalkeep.com/magic/rules/oracle/oracle-uh.txt");
|
||||||
|
|
||||||
|
colorOverride.insert("Ancestral Vision", QStringList("U"));
|
||||||
|
colorOverride.insert("Crimson Kobolds", QStringList("R"));
|
||||||
|
colorOverride.insert("Crookshank Kobolds", QStringList("R"));
|
||||||
|
colorOverride.insert("Dryad Arbor", QStringList("G"));
|
||||||
|
colorOverride.insert("Evermind", QStringList("U"));
|
||||||
|
colorOverride.insert("Hypergenesis", QStringList("G"));
|
||||||
|
colorOverride.insert("Intervention Pact", QStringList("W"));
|
||||||
|
colorOverride.insert("Kobolds of Kher Keep", QStringList("R"));
|
||||||
|
colorOverride.insert("Living End", QStringList("B"));
|
||||||
|
colorOverride.insert("Pact of Negation", QStringList("U"));
|
||||||
|
colorOverride.insert("Pact of the Titan", QStringList("R"));
|
||||||
|
colorOverride.insert("Restore Balance", QStringList("W"));
|
||||||
|
colorOverride.insert("Slaughter Pact", QStringList("B"));
|
||||||
|
colorOverride.insert("Summoner's Pact", QStringList("G"));
|
||||||
|
colorOverride.insert("Wheel of Fate", QStringList("R"));
|
||||||
|
|
||||||
|
tableRowOverride.insert("Azorius Signet", 0);
|
||||||
|
tableRowOverride.insert("Basalt Monolith", 0);
|
||||||
|
tableRowOverride.insert("Black Lotus", 0);
|
||||||
|
tableRowOverride.insert("Black Mana Battery", 0);
|
||||||
|
tableRowOverride.insert("Bloodstone Cameo", 0);
|
||||||
|
tableRowOverride.insert("Blue Mana Battery", 0);
|
||||||
|
tableRowOverride.insert("Boros Signet", 0);
|
||||||
|
tableRowOverride.insert("Celestial Prism", 0);
|
||||||
|
tableRowOverride.insert("Charcoal Diamond", 0);
|
||||||
|
tableRowOverride.insert("Chrome Mox", 0);
|
||||||
|
tableRowOverride.insert("Chronatog Totem", 0);
|
||||||
|
tableRowOverride.insert("Coalition Relic", 0);
|
||||||
|
tableRowOverride.insert("Coldsteel Heart", 0);
|
||||||
|
tableRowOverride.insert("Darksteel Ingot", 0);
|
||||||
|
tableRowOverride.insert("Dimir Signet", 0);
|
||||||
|
tableRowOverride.insert("Drake-Skull Cameo", 0);
|
||||||
|
tableRowOverride.insert("Eye of Ramos", 0);
|
||||||
|
tableRowOverride.insert("Fellwar Stone", 0);
|
||||||
|
tableRowOverride.insert("Fieldmist Borderpost", 0);
|
||||||
|
tableRowOverride.insert("Fire Diamond", 0);
|
||||||
|
tableRowOverride.insert("Firewild Borderpost", 0);
|
||||||
|
tableRowOverride.insert("Foriysian Totem", 0);
|
||||||
|
tableRowOverride.insert("Gemstone Array", 0);
|
||||||
|
tableRowOverride.insert("Gilded Lotus", 0);
|
||||||
|
tableRowOverride.insert("Golgari Signet", 0);
|
||||||
|
tableRowOverride.insert("Green Mana Battery", 0);
|
||||||
|
tableRowOverride.insert("Grim Monolith", 0);
|
||||||
|
tableRowOverride.insert("Gruul Signet", 0);
|
||||||
|
tableRowOverride.insert("Guardian Idol", 0);
|
||||||
|
tableRowOverride.insert("Heart of Ramos", 0);
|
||||||
|
tableRowOverride.insert("Honor-Worn Shaku", 0);
|
||||||
|
tableRowOverride.insert("Horn of Ramos", 0);
|
||||||
|
tableRowOverride.insert("Izzet Signet", 0);
|
||||||
|
tableRowOverride.insert("Jeweled Amulet", 0);
|
||||||
|
tableRowOverride.insert("Kyren Toy", 0);
|
||||||
|
tableRowOverride.insert("Lion's Eye Diamond", 0);
|
||||||
|
tableRowOverride.insert("Lotus Bloom", 0);
|
||||||
|
tableRowOverride.insert("Lotus Blossom", 0);
|
||||||
|
tableRowOverride.insert("Lotus Petal", 0);
|
||||||
|
tableRowOverride.insert("Mana Crypt", 0);
|
||||||
|
tableRowOverride.insert("Mana Cylix", 0);
|
||||||
|
tableRowOverride.insert("Mana Prism", 0);
|
||||||
|
tableRowOverride.insert("Mana Vault", 0);
|
||||||
|
tableRowOverride.insert("Marble Diamond", 0);
|
||||||
|
tableRowOverride.insert("Mind Stone", 0);
|
||||||
|
tableRowOverride.insert("Mistvein Borderpost", 0);
|
||||||
|
tableRowOverride.insert("Moss Diamond", 0);
|
||||||
|
tableRowOverride.insert("Mox Diamond", 0);
|
||||||
|
tableRowOverride.insert("Mox Emerald", 0);
|
||||||
|
tableRowOverride.insert("Mox Jet", 0);
|
||||||
|
tableRowOverride.insert("Mox Pearl", 0);
|
||||||
|
tableRowOverride.insert("Mox Ruby", 0);
|
||||||
|
tableRowOverride.insert("Mox Sapphire", 0);
|
||||||
|
tableRowOverride.insert("Obelisk of Bant", 0);
|
||||||
|
tableRowOverride.insert("Obelisk of Esper", 0);
|
||||||
|
tableRowOverride.insert("Obelisk of Grixis", 0);
|
||||||
|
tableRowOverride.insert("Obelisk of Jund", 0);
|
||||||
|
tableRowOverride.insert("Obelisk of Naya", 0);
|
||||||
|
tableRowOverride.insert("Orzhov Signet", 0);
|
||||||
|
tableRowOverride.insert("Paradise Plume", 0);
|
||||||
|
tableRowOverride.insert("Pentad Prism", 0);
|
||||||
|
tableRowOverride.insert("Phyrexian Lens", 0);
|
||||||
|
tableRowOverride.insert("Phyrexian Totem", 0);
|
||||||
|
tableRowOverride.insert("Prismatic Lens", 0);
|
||||||
|
tableRowOverride.insert("Rakdos Signet", 0);
|
||||||
|
tableRowOverride.insert("Red Mana Battery", 0);
|
||||||
|
tableRowOverride.insert("Seashell Cameo", 0);
|
||||||
|
tableRowOverride.insert("Selesnya Signet", 0);
|
||||||
|
tableRowOverride.insert("Serum Powder", 0);
|
||||||
|
tableRowOverride.insert("Simic Signet", 0);
|
||||||
|
tableRowOverride.insert("Sisay's Ring", 0);
|
||||||
|
tableRowOverride.insert("Skull of Ramos", 0);
|
||||||
|
tableRowOverride.insert("Sky Diamond", 0);
|
||||||
|
tableRowOverride.insert("Sol Grail", 0);
|
||||||
|
tableRowOverride.insert("Sol Ring", 0);
|
||||||
|
tableRowOverride.insert("Spectral Searchlight", 0);
|
||||||
|
tableRowOverride.insert("Springleaf Drum", 0);
|
||||||
|
tableRowOverride.insert("Standing Stones", 0);
|
||||||
|
tableRowOverride.insert("Star Compass", 0);
|
||||||
|
tableRowOverride.insert("Talisman of Dominance", 0);
|
||||||
|
tableRowOverride.insert("Talisman of Impulse", 0);
|
||||||
|
tableRowOverride.insert("Talisman of Indulgence", 0);
|
||||||
|
tableRowOverride.insert("Talisman of Progress", 0);
|
||||||
|
tableRowOverride.insert("Talisman of Unity", 0);
|
||||||
|
tableRowOverride.insert("Terrarion", 0);
|
||||||
|
tableRowOverride.insert("Thran Dynamo", 0);
|
||||||
|
tableRowOverride.insert("Thunder Totem", 0);
|
||||||
|
tableRowOverride.insert("Tigereye Cameo", 0);
|
||||||
|
tableRowOverride.insert("Tooth of Ramos", 0);
|
||||||
|
tableRowOverride.insert("Troll-Horn Cameo", 0);
|
||||||
|
tableRowOverride.insert("Ur-Golem's Eye", 0);
|
||||||
|
tableRowOverride.insert("Veinfire Borderpost", 0);
|
||||||
|
tableRowOverride.insert("Weatherseed Totem", 0);
|
||||||
|
tableRowOverride.insert("White Mana Battery", 0);
|
||||||
|
tableRowOverride.insert("Wildfield Borderpost", 0);
|
||||||
|
tableRowOverride.insert("Worn Powerstone", 0);
|
||||||
|
|
||||||
|
buffer = new QBuffer(this);
|
||||||
|
|
||||||
|
http = new QHttp(this);
|
||||||
|
connect(http, SIGNAL(requestFinished(int, bool)), this, SLOT(httpRequestFinished(int, bool)));
|
||||||
|
connect(http, SIGNAL(responseHeaderReceived(const QHttpResponseHeader &)), this, SLOT(readResponseHeader(const QHttpResponseHeader &)));
|
||||||
|
}
|
||||||
|
|
||||||
|
void OracleImporter::importOracleFile(CardSet *set)
|
||||||
|
{
|
||||||
|
int cards = 0;
|
||||||
|
buffer->seek(0);
|
||||||
|
QTextStream in(buffer);
|
||||||
|
while (!in.atEnd()) {
|
||||||
|
QString cardname = in.readLine();
|
||||||
|
if (cardname.isEmpty())
|
||||||
|
continue;
|
||||||
|
QString manacost = in.readLine();
|
||||||
|
QString cardtype, powtough;
|
||||||
|
QStringList text;
|
||||||
|
if ((manacost.contains("Land")) || (manacost.contains("Sorcery")) || (manacost.contains("Instant"))) {
|
||||||
|
cardtype = manacost;
|
||||||
|
manacost.clear();
|
||||||
|
} else {
|
||||||
|
cardtype = in.readLine();
|
||||||
|
powtough = in.readLine();
|
||||||
|
// Dirty hack.
|
||||||
|
// Cards to test: Any creature, any basic land, Ancestral Vision, Fire // Ice.
|
||||||
|
if (!powtough.contains("/") || powtough.size() > 5) {
|
||||||
|
text << powtough;
|
||||||
|
powtough = QString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
QString line = in.readLine();
|
||||||
|
while (!line.isEmpty()) {
|
||||||
|
text << line;
|
||||||
|
line = in.readLine();
|
||||||
|
}
|
||||||
|
CardInfo *card;
|
||||||
|
if (cardHash.contains(cardname))
|
||||||
|
card = cardHash.value(cardname);
|
||||||
|
else {
|
||||||
|
QStringList colors;
|
||||||
|
QStringList allColors = QStringList() << "W" << "U" << "B" << "R" << "G";
|
||||||
|
for (int i = 0; i < allColors.size(); i++)
|
||||||
|
if (manacost.contains(allColors[i]))
|
||||||
|
colors << allColors[i];
|
||||||
|
|
||||||
|
if (colorOverride.contains(cardname))
|
||||||
|
colors = colorOverride.value(cardname);
|
||||||
|
|
||||||
|
card = new CardInfo(this, cardname, manacost, cardtype, powtough, text.join("\n"), colors);
|
||||||
|
|
||||||
|
int tableRow = 1;
|
||||||
|
QString mainCardType = card->getMainCardType();
|
||||||
|
if (tableRowOverride.contains(cardname))
|
||||||
|
tableRow = tableRowOverride.value(cardname);
|
||||||
|
else if (mainCardType == "Land")
|
||||||
|
tableRow = 0;
|
||||||
|
else if ((mainCardType == "Sorcery") || (mainCardType == "Instant"))
|
||||||
|
tableRow = 2;
|
||||||
|
else if (mainCardType == "Creature")
|
||||||
|
tableRow = 3;
|
||||||
|
card->setTableRow(tableRow);
|
||||||
|
|
||||||
|
cardHash.insert(cardname, card);
|
||||||
|
}
|
||||||
|
card->addToSet(set);
|
||||||
|
cards++;
|
||||||
|
}
|
||||||
|
qDebug(QString("%1: %2 cards imported").arg(set->getLongName()).arg(cards).toLatin1());
|
||||||
|
}
|
||||||
|
|
||||||
|
void OracleImporter::downloadNextFile()
|
||||||
|
{
|
||||||
|
if (setIndex == -1) {
|
||||||
|
progressDialog = new QProgressDialog(tr("Downloading oracle files..."), QString(), 0, setsToDownload.size());
|
||||||
|
setIndex = 0;
|
||||||
|
}
|
||||||
|
QString urlString = setsToDownload[setIndex].getUrl();
|
||||||
|
if (urlString.startsWith("http://")) {
|
||||||
|
QUrl url(urlString);
|
||||||
|
http->setHost(url.host(), QHttp::ConnectionModeHttp, url.port() == -1 ? 0 : url.port());
|
||||||
|
|
||||||
|
buffer->close();
|
||||||
|
buffer->setData(QByteArray());
|
||||||
|
buffer->open(QIODevice::ReadWrite | QIODevice::Text);
|
||||||
|
reqId = http->get(QUrl::toPercentEncoding(url.path(), "!$&'()*+,;=:@/"), buffer);
|
||||||
|
} else {
|
||||||
|
QFile file(urlString);
|
||||||
|
file.open(QIODevice::ReadOnly | QIODevice::Text);
|
||||||
|
|
||||||
|
buffer->close();
|
||||||
|
buffer->setData(file.readAll());
|
||||||
|
buffer->open(QIODevice::ReadWrite | QIODevice::Text);
|
||||||
|
reqId = 0;
|
||||||
|
httpRequestFinished(reqId, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OracleImporter::httpRequestFinished(int requestId, bool error)
|
||||||
|
{
|
||||||
|
if (error) {
|
||||||
|
QMessageBox::information(0, tr("HTTP"), tr("Error."));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (requestId != reqId)
|
||||||
|
return;
|
||||||
|
|
||||||
|
CardSet *set = new CardSet(setsToDownload[setIndex].getShortName(), setsToDownload[setIndex].getLongName());
|
||||||
|
if (!setHash.contains(set->getShortName()))
|
||||||
|
setHash.insert(set->getShortName(), set);
|
||||||
|
importOracleFile(set);
|
||||||
|
progressDialog->setValue(++setIndex);
|
||||||
|
|
||||||
|
if (setIndex == setsToDownload.size()) {
|
||||||
|
qDebug(QString("Total: %1 cards imported").arg(cardHash.size()).toLatin1());
|
||||||
|
setIndex = -1;
|
||||||
|
saveToFile("cards.xml");
|
||||||
|
qApp->quit();
|
||||||
|
} else
|
||||||
|
downloadNextFile();
|
||||||
|
}
|
||||||
|
|
||||||
|
void OracleImporter::readResponseHeader(const QHttpResponseHeader &responseHeader)
|
||||||
|
{
|
||||||
|
switch (responseHeader.statusCode()) {
|
||||||
|
case 200:
|
||||||
|
case 301:
|
||||||
|
case 302:
|
||||||
|
case 303:
|
||||||
|
case 307:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
QMessageBox::information(0, tr("HTTP"), tr("Download failed: %1.").arg(responseHeader.reasonPhrase()));
|
||||||
|
progressDialog->hide();
|
||||||
|
http->abort();
|
||||||
|
deleteLater();
|
||||||
|
}
|
||||||
|
}
|
41
oracle/src/oracleimporter.h
Normal file
41
oracle/src/oracleimporter.h
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
#ifndef ORACLEIMPORTER_H
|
||||||
|
#define ORACLEIMPORTER_H
|
||||||
|
|
||||||
|
#include <carddatabase.h>
|
||||||
|
#include <QHttp>
|
||||||
|
|
||||||
|
class QProgressDialog;
|
||||||
|
class QBuffer;
|
||||||
|
|
||||||
|
class SetToDownload {
|
||||||
|
private:
|
||||||
|
QString shortName, longName, url;
|
||||||
|
public:
|
||||||
|
const QString &getShortName() const { return shortName; }
|
||||||
|
const QString &getLongName() const { return longName; }
|
||||||
|
const QString &getUrl() const { return url; }
|
||||||
|
SetToDownload(const QString &_shortName, const QString &_longName, const QString &_url)
|
||||||
|
: shortName(_shortName), longName(_longName), url(_url) { }
|
||||||
|
};
|
||||||
|
|
||||||
|
class OracleImporter : public CardDatabase {
|
||||||
|
Q_OBJECT
|
||||||
|
private:
|
||||||
|
QList<SetToDownload> setsToDownload;
|
||||||
|
QMap<QString, QStringList> colorOverride;
|
||||||
|
QMap<QString, int> tableRowOverride;
|
||||||
|
int setIndex;
|
||||||
|
int reqId;
|
||||||
|
QBuffer *buffer;
|
||||||
|
QHttp *http;
|
||||||
|
QProgressDialog *progressDialog;
|
||||||
|
private slots:
|
||||||
|
void httpRequestFinished(int requestId, bool error);
|
||||||
|
void readResponseHeader(const QHttpResponseHeader &responseHeader);
|
||||||
|
public:
|
||||||
|
OracleImporter();
|
||||||
|
void importOracleFile(CardSet *set);
|
||||||
|
void downloadNextFile();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in a new issue