Commit ef68b5a7 authored by twanvl's avatar twanvl

more localisation

parent 85652014
...@@ -37,14 +37,17 @@ menu ...@@ -37,14 +37,17 @@ menu
cards tab: &Cards cards tab: &Cards
help: &Help help: &Help
about: &About Magic Set Editor...
############################################################## Menu help texts ############################################################## Menu help texts
help: help:
file: file:
new: Create a new set new: Create a new set
open: Open a set open: Open an existing set
save: Save the set save: Save the set
save as: Save the set with a new name save as: Save the set with a new name
print preview: Shows cards as they will be printed
print: Print cards from this set
exit: Quits Magic Set Editor; prompts to save the set exit: Quits Magic Set Editor; prompts to save the set
edit: edit:
...@@ -52,8 +55,13 @@ help: ...@@ -52,8 +55,13 @@ help:
redo: Redoes the last action redo: Redoes the last action
format: format:
bold: Makes the selected text bold bold: Makes the selected text bold
italic: Makes the selected text italic italic: Makes the selected text italic
window:
new window: Creates another window to edit the same set
help:
############################################################## Toolbar ############################################################## Toolbar
tool: tool:
...@@ -70,11 +78,79 @@ tool: ...@@ -70,11 +78,79 @@ tool:
############################################################## Labels in the GUI ############################################################## Labels in the GUI
label: label:
card notes: Card notes: card notes: Card notes:
# Preferences
zoom: &Zoom:
external programs: External programs
apprentice: &Apprentice:
check at startup: Check for new versions at startup
checking requires internet:
Checking for updates requires an internet connection.
When no internet connection is found upates are not checked.
No information is collected when checking for updates.
# Column select
select columns: Select the columns you want to display
columns: Columns:
# Card select
select cards print: Select the cards you want to print
# Image slicer
original: Original:
result: Result:
size: Size
selection: Selection
zoom: Zoom
filter: Filter
############################################################## Buttons in the GUI ############################################################## Buttons/checkboxes/choices in the GUI
button: button:
# Set window
use for all cards: Use for &all cards use for all cards: Use for &all cards
# Welcome
new set: New set
open set: Open set
last opened set: Last opened set
# Preferences
select: &Select...
browse: &Browse...
high quality: &High quality rendering
show lines: Show &lines around fields
zoom export: Use zoom and rotation settings when e&xporting
check now: Check &Now
always: Always
if internet connection exists: If internet connection exists
never: Never
# Column select
move up: Move &Up
move down: Move &Down
show: &Show
hide: &Hide
# Card select
select all: Select &All
select none: Select &None
############################################################## Titles in the GUI
title:
magic set editor: Magic Set Editor
about: About Magic Set Editor
preferences: Preferences
display: Display
directories: Directories
updates: Updates
update check: Update Check
locate apprentice: Locate Apprentice
select columns: Select Columns
select cards: Select Cards
slice image: Slice Image
print preview: Print Preview
############################################################## Action (undo/redo) names ############################################################## Action (undo/redo) names
action: action:
...@@ -126,6 +202,10 @@ error: ...@@ -126,6 +202,10 @@ error:
When you open it, some aspects of the file may be lost. When you open it, some aspects of the file may be lost.
It is recommended that you upgrade to the latest version. It is recommended that you upgrade to the latest version.
Visit http:://magicseteditor.sourceforge.net/ Visit http:://magicseteditor.sourceforge.net/
# Update checking
checking updates failed: Checking updates failed.
no updates: There are no available updates.
############################################################## Types used in scripts ############################################################## Types used in scripts
type: type:
......
...@@ -27,6 +27,7 @@ IMPLEMENT_REFLECTION(Locale) { ...@@ -27,6 +27,7 @@ IMPLEMENT_REFLECTION(Locale) {
REFLECT_N("tool", translations[LOCALE_CAT_TOOL]); REFLECT_N("tool", translations[LOCALE_CAT_TOOL]);
REFLECT_N("label", translations[LOCALE_CAT_LABEL]); REFLECT_N("label", translations[LOCALE_CAT_LABEL]);
REFLECT_N("button", translations[LOCALE_CAT_BUTTON]); REFLECT_N("button", translations[LOCALE_CAT_BUTTON]);
REFLECT_N("title", translations[LOCALE_CAT_TITLE]);
REFLECT_N("action", translations[LOCALE_CAT_ACTION]); REFLECT_N("action", translations[LOCALE_CAT_ACTION]);
REFLECT_N("error", translations[LOCALE_CAT_ERROR]); REFLECT_N("error", translations[LOCALE_CAT_ERROR]);
REFLECT_N("type", translations[LOCALE_CAT_TYPE]); REFLECT_N("type", translations[LOCALE_CAT_TYPE]);
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
// ----------------------------------------------------------------------------- : About window // ----------------------------------------------------------------------------- : About window
AboutWindow::AboutWindow(Window* parent) AboutWindow::AboutWindow(Window* parent)
: wxDialog(parent, wxID_ANY, _("About Magic Set Editor"), wxDefaultPosition, wxSize(510,340), wxCLIP_CHILDREN | wxDEFAULT_DIALOG_STYLE) : wxDialog(parent, wxID_ANY, _TITLE_("about"), wxDefaultPosition, wxSize(510,340), wxCLIP_CHILDREN | wxDEFAULT_DIALOG_STYLE)
, logo (load_resource_image(_("ABOUT"))) , logo (load_resource_image(_("ABOUT")))
, logo2(load_resource_image(_("TWO"))) , logo2(load_resource_image(_("TWO")))
{ {
...@@ -55,7 +55,7 @@ void AboutWindow::draw(DC& dc) { ...@@ -55,7 +55,7 @@ void AboutWindow::draw(DC& dc) {
dc.DrawText(_(" don't use it for anything important"), 34, 181); dc.DrawText(_(" don't use it for anything important"), 34, 181);
dc.DrawText(_("Copyright \xA9 2006 Twan van Laarhoven"), 34, 214); dc.DrawText(_("Copyright \xA9 2006 Twan van Laarhoven"), 34, 214);
} }
BEGIN_EVENT_TABLE(AboutWindow, wxDialog) BEGIN_EVENT_TABLE(AboutWindow, wxDialog)
EVT_PAINT (AboutWindow::onPaint) EVT_PAINT (AboutWindow::onPaint)
END_EVENT_TABLE () END_EVENT_TABLE ()
......
...@@ -178,7 +178,7 @@ void CardListBase::selectCurrentCard() { ...@@ -178,7 +178,7 @@ void CardListBase::selectCurrentCard() {
bool CardListBase::canCopy() const { return !!selected_card; } bool CardListBase::canCopy() const { return !!selected_card; }
bool CardListBase::canCut() const { return canCopy() && allowModify(); } bool CardListBase::canCut() const { return canCopy() && allowModify(); }
bool CardListBase::canPaste() const { bool CardListBase::canPaste() const {
return wxTheClipboard->IsSupported(CardDataObject::format); return allowModify() && wxTheClipboard->IsSupported(CardDataObject::format);
} }
bool CardListBase::doCopy() { bool CardListBase::doCopy() {
...@@ -417,6 +417,7 @@ void CardListBase::onChar(wxKeyEvent& ev) { ...@@ -417,6 +417,7 @@ void CardListBase::onChar(wxKeyEvent& ev) {
} }
void CardListBase::onDrag(wxMouseEvent& ev) { void CardListBase::onDrag(wxMouseEvent& ev) {
if (!allowModify()) return;
if (ev.Dragging() && selected_card && !sort_criterium) { if (ev.Dragging() && selected_card && !sort_criterium) {
// reorder card list // reorder card list
int flags; int flags;
......
...@@ -103,9 +103,10 @@ class CardListBase : public wxListView, public SetView { ...@@ -103,9 +103,10 @@ class CardListBase : public wxListView, public SetView {
virtual wxListItemAttr* OnGetItemAttr(long pos) const; virtual wxListItemAttr* OnGetItemAttr(long pos) const;
// --------------------------------------------------- : Data // --------------------------------------------------- : Data
private: protected:
CardP selected_card; ///< The currently selected card, or -1 if no card is selected CardP selected_card; ///< The currently selected card, or -1 if no card is selected
long selected_card_pos;///< Position of the selected card in the sorted_card_list long selected_card_pos;///< Position of the selected card in the sorted_card_list
private:
// display stuff // display stuff
ChoiceStyleP color_style; ///< Style (and field) to use for text color (optional) ChoiceStyleP color_style; ///< Style (and field) to use for text color (optional)
vector<FieldP> column_fields; ///< The field to use for each column (by column index) vector<FieldP> column_fields; ///< The field to use for each column (by column index)
......
...@@ -17,22 +17,22 @@ DECLARE_TYPEOF_COLLECTION(CardListColumnSelectDialog::ColumnSettingsF); ...@@ -17,22 +17,22 @@ DECLARE_TYPEOF_COLLECTION(CardListColumnSelectDialog::ColumnSettingsF);
// ----------------------------------------------------------------------------- : CardListColumnSelectDialog // ----------------------------------------------------------------------------- : CardListColumnSelectDialog
CardListColumnSelectDialog::CardListColumnSelectDialog(Window* parent, const GameP& game) CardListColumnSelectDialog::CardListColumnSelectDialog(Window* parent, const GameP& game)
: wxDialog(parent, wxID_ANY,_("Select Columns"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER) : wxDialog(parent, wxID_ANY, _TITLE_("select columns"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
, game(game) , game(game)
{ {
// Create controls // Create controls
list = new wxCheckListBox(this, wxID_ANY); list = new wxCheckListBox(this, wxID_ANY);
// Create sizer // Create sizer
wxSizer* s = new wxBoxSizer(wxVERTICAL); wxSizer* s = new wxBoxSizer(wxVERTICAL);
s->Add(new wxStaticText(this, wxID_ANY, _("Select the columns you want to display")), 0, wxALL, 8); s->Add(new wxStaticText(this, wxID_ANY, _LABEL_("select columns")), 0, wxALL, 8);
s->Add(new wxStaticText(this, wxID_ANY, _("Columns:") ), 0, wxALL & ~wxBOTTOM, 8); s->Add(new wxStaticText(this, wxID_ANY, _LABEL_("columns") ), 0, wxALL & ~wxBOTTOM, 8);
wxSizer* s2 = new wxBoxSizer(wxHORIZONTAL); wxSizer* s2 = new wxBoxSizer(wxHORIZONTAL);
s2->Add(list, 1, wxEXPAND | wxLEFT | wxRIGHT, 4); s2->Add(list, 1, wxEXPAND | wxLEFT | wxRIGHT, 4);
wxSizer* s3 = new wxBoxSizer(wxVERTICAL); wxSizer* s3 = new wxBoxSizer(wxVERTICAL);
s3->Add(new wxButton(this, ID_MOVE_UP, _("Move &Up")), 0, wxEXPAND, 2); s3->Add(new wxButton(this, ID_MOVE_UP, _BUTTON_("move up")), 0, wxEXPAND, 2);
s3->Add(new wxButton(this, ID_MOVE_DOWN, _("Move &Down")), 0, wxEXPAND | wxTOP, 2); s3->Add(new wxButton(this, ID_MOVE_DOWN, _BUTTON_("move down")), 0, wxEXPAND | wxTOP, 2);
s3->Add(new wxButton(this, ID_SHOW, _("&Show")), 0, wxEXPAND | wxTOP, 2); s3->Add(new wxButton(this, ID_SHOW, _BUTTON_("show")), 0, wxEXPAND | wxTOP, 2);
s3->Add(new wxButton(this, ID_HIDE, _("&Hide")), 0, wxEXPAND | wxTOP, 2); s3->Add(new wxButton(this, ID_HIDE, _BUTTON_("hide")), 0, wxEXPAND | wxTOP, 2);
s2->Add(s3, 0, wxEXPAND | wxALL & ~wxTOP, 4); s2->Add(s3, 0, wxEXPAND | wxALL & ~wxTOP, 4);
s->Add(s2 , 1, wxEXPAND | wxALL, 4); s->Add(s2 , 1, wxEXPAND | wxALL, 4);
s->Add(CreateButtonSizer(wxOK | wxCANCEL) , 0, wxEXPAND | wxALL, 8); s->Add(CreateButtonSizer(wxOK | wxCANCEL) , 0, wxEXPAND | wxALL, 8);
......
...@@ -73,7 +73,7 @@ DEFINE_EVENT_TYPE(EVENT_SLICE_CHANGED); ...@@ -73,7 +73,7 @@ DEFINE_EVENT_TYPE(EVENT_SLICE_CHANGED);
// ----------------------------------------------------------------------------- : ImageSliceWindow // ----------------------------------------------------------------------------- : ImageSliceWindow
ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wxSize& target_size) ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wxSize& target_size)
: wxDialog(parent,wxID_ANY,_("Slice image"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxFULL_REPAINT_ON_RESIZE) : wxDialog(parent,wxID_ANY,_TITLE_("slice image"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxFULL_REPAINT_ON_RESIZE)
, slice(source, target_size) , slice(source, target_size)
{ {
// init controls // init controls
...@@ -86,7 +86,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx ...@@ -86,7 +86,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx
, _("Size to &Fit") , _("Size to &Fit")
, _("F&orce to Fit") , _("F&orce to Fit")
, _("&Custom Size") }; , _("&Custom Size") };
size = new wxRadioBox(this, ID_SIZE, _("Size"), defPos, wxDefaultSize, 4, sizes, 1); size = new wxRadioBox(this, ID_SIZE, _LABEL_("size"), defPos, wxDefaultSize, 4, sizes, 1);
left = new wxSpinCtrl(this, ID_LEFT, _(""), defPos, spinSize); left = new wxSpinCtrl(this, ID_LEFT, _(""), defPos, spinSize);
top = new wxSpinCtrl(this, ID_TOP, _(""), defPos, spinSize); top = new wxSpinCtrl(this, ID_TOP, _(""), defPos, spinSize);
...@@ -115,11 +115,11 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx ...@@ -115,11 +115,11 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx
// top row: image editors // top row: image editors
wxSizer* s2 = new wxBoxSizer(wxHORIZONTAL); wxSizer* s2 = new wxBoxSizer(wxHORIZONTAL);
wxSizer* s3 = new wxBoxSizer(wxVERTICAL); wxSizer* s3 = new wxBoxSizer(wxVERTICAL);
s3->Add(new wxStaticText(this, wxID_ANY, _("Original:"))); s3->Add(new wxStaticText(this, wxID_ANY, _LABEL_("original")));
s3->Add(selector, 1, wxEXPAND | wxTOP, 4); s3->Add(selector, 1, wxEXPAND | wxTOP, 4);
s2->Add(s3, 1, wxEXPAND | wxALL, 4); s2->Add(s3, 1, wxEXPAND | wxALL, 4);
wxSizer* s4 = new wxBoxSizer(wxVERTICAL); wxSizer* s4 = new wxBoxSizer(wxVERTICAL);
s4->Add(new wxStaticText(this, wxID_ANY, _("Result:"))); s4->Add(new wxStaticText(this, wxID_ANY, _LABEL_("result")));
s4->Add(preview, 0, wxTOP, 4); s4->Add(preview, 0, wxTOP, 4);
s2->Add(s4, 0, wxALL, 4); s2->Add(s4, 0, wxALL, 4);
s->Add(s2, 1, wxEXPAND); s->Add(s2, 1, wxEXPAND);
...@@ -128,7 +128,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx ...@@ -128,7 +128,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx
s5->AddStretchSpacer(1); s5->AddStretchSpacer(1);
s5->Add(size, 0, wxEXPAND | wxALL, 4); s5->Add(size, 0, wxEXPAND | wxALL, 4);
s5->AddStretchSpacer(1); s5->AddStretchSpacer(1);
wxSizer* s6 = new wxStaticBoxSizer(wxVERTICAL, this, _("Selection")); wxSizer* s6 = new wxStaticBoxSizer(wxVERTICAL, this, _LABEL_("selection"));
wxSizer* s7 = new wxFlexGridSizer(0, 2, 4, 5); wxSizer* s7 = new wxFlexGridSizer(0, 2, 4, 5);
s7->Add(new wxStaticText(this, wxID_ANY, _("&Left")), 0, wxALIGN_CENTER_VERTICAL); s7->Add(new wxStaticText(this, wxID_ANY, _("&Left")), 0, wxALIGN_CENTER_VERTICAL);
s7->Add(left, 0, wxEXPAND); s7->Add(left, 0, wxEXPAND);
...@@ -141,7 +141,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx ...@@ -141,7 +141,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx
s6->Add(s7, 1, wxEXPAND | wxALL, 4); s6->Add(s7, 1, wxEXPAND | wxALL, 4);
s5->Add(s6, 0, wxEXPAND | wxALL, 4); s5->Add(s6, 0, wxEXPAND | wxALL, 4);
s5->AddStretchSpacer(1); s5->AddStretchSpacer(1);
wxSizer* s8 = zoom_sizer = new wxStaticBoxSizer(wxVERTICAL, this, _("Zoom")); wxSizer* s8 = zoom_sizer = new wxStaticBoxSizer(wxVERTICAL, this, _LABEL_("zoom"));
s8->Add(fix_aspect, 0, wxEXPAND | wxALL & ~wxBOTTOM, 4); s8->Add(fix_aspect, 0, wxEXPAND | wxALL & ~wxBOTTOM, 4);
wxSizer* s9 = zoom_fixed = new wxFlexGridSizer(0, 3, 4, 5); wxSizer* s9 = zoom_fixed = new wxFlexGridSizer(0, 3, 4, 5);
s9->Add(new wxStaticText(this, wxID_ANY, _("&Zoom")), 0, wxALIGN_CENTER_VERTICAL); s9->Add(new wxStaticText(this, wxID_ANY, _("&Zoom")), 0, wxALIGN_CENTER_VERTICAL);
...@@ -158,7 +158,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx ...@@ -158,7 +158,7 @@ ImageSliceWindow::ImageSliceWindow(Window* parent, const Image& source, const wx
s8->Add(sA, 0, wxEXPAND | wxALL, 4); s8->Add(sA, 0, wxEXPAND | wxALL, 4);
s5->Add(s8, 0, wxEXPAND | wxALL, 4); s5->Add(s8, 0, wxEXPAND | wxALL, 4);
s5->AddStretchSpacer(1); s5->AddStretchSpacer(1);
wxSizer* sB = new wxStaticBoxSizer(wxVERTICAL, this, _("Filter")); wxSizer* sB = new wxStaticBoxSizer(wxVERTICAL, this, _LABEL_("filter"));
sB->Add(sharpen, 0, wxEXPAND | wxALL & ~wxBOTTOM, 4); sB->Add(sharpen, 0, wxEXPAND | wxALL & ~wxBOTTOM, 4);
sB->Add(sharpen_amount, 0, wxEXPAND | wxALL, 4); sB->Add(sharpen_amount, 0, wxEXPAND | wxALL, 4);
s5->Add(sB, 0, wxEXPAND | wxALL, 4); s5->Add(sB, 0, wxEXPAND | wxALL, 4);
......
...@@ -77,13 +77,13 @@ class UpdatePreferencesPage : public PreferencesPage { ...@@ -77,13 +77,13 @@ class UpdatePreferencesPage : public PreferencesPage {
// ----------------------------------------------------------------------------- : PreferencesWindow // ----------------------------------------------------------------------------- : PreferencesWindow
PreferencesWindow::PreferencesWindow(Window* parent) PreferencesWindow::PreferencesWindow(Window* parent)
: wxDialog(parent, wxID_ANY, _("Preferences"), wxDefaultPosition) : wxDialog(parent, wxID_ANY, _TITLE_("preferences"), wxDefaultPosition)
{ {
// init notebook // init notebook
wxNotebook* nb = new wxNotebook(this, ID_NOTEBOOK); wxNotebook* nb = new wxNotebook(this, ID_NOTEBOOK);
nb->AddPage(new DisplayPreferencesPage(nb), _("Display")); nb->AddPage(new DisplayPreferencesPage(nb), _TITLE_("display"));
nb->AddPage(new DirsPreferencesPage (nb), _("Directories")); nb->AddPage(new DirsPreferencesPage (nb), _TITLE_("directories"));
nb->AddPage(new UpdatePreferencesPage (nb), _("Updates")); nb->AddPage(new UpdatePreferencesPage (nb), _TITLE_("updates"));
// init sizer // init sizer
wxSizer* s = new wxBoxSizer(wxVERTICAL); wxSizer* s = new wxBoxSizer(wxVERTICAL);
...@@ -116,11 +116,11 @@ DisplayPreferencesPage::DisplayPreferencesPage(Window* parent) ...@@ -116,11 +116,11 @@ DisplayPreferencesPage::DisplayPreferencesPage(Window* parent)
: PreferencesPage(parent) : PreferencesPage(parent)
{ {
// init controls // init controls
high_quality = new wxCheckBox(this, wxID_ANY, _("&High quality rendering")); high_quality = new wxCheckBox(this, wxID_ANY, _BUTTON_("high quality"));
borders = new wxCheckBox(this, wxID_ANY, _("Show &lines around fields")); borders = new wxCheckBox(this, wxID_ANY, _BUTTON_("show lines"));
zoom = new wxSpinCtrl(this, wxID_ANY); zoom = new wxSpinCtrl(this, wxID_ANY);
non_normal_export = new wxCheckBox(this, wxID_ANY, _("Use zoom and rotation settings when e&xporting")); non_normal_export = new wxCheckBox(this, wxID_ANY, _BUTTON_("zoom export"));
wxButton* columns = new wxButton(this, ID_SELECT_COLUMNS, _("Select...")); wxButton* columns = new wxButton(this, ID_SELECT_COLUMNS, _BUTTON_("select"));
// set values // set values
high_quality-> SetValue( settings.default_stylesheet_settings.card_anti_alias()); high_quality-> SetValue( settings.default_stylesheet_settings.card_anti_alias());
borders-> SetValue( settings.default_stylesheet_settings.card_borders()); borders-> SetValue( settings.default_stylesheet_settings.card_borders());
...@@ -173,13 +173,13 @@ DirsPreferencesPage::DirsPreferencesPage(Window* parent) ...@@ -173,13 +173,13 @@ DirsPreferencesPage::DirsPreferencesPage(Window* parent)
{ {
// init controls // init controls
apprentice = new wxTextCtrl(this, wxID_ANY); apprentice = new wxTextCtrl(this, wxID_ANY);
wxButton* ab = new wxButton(this, ID_APPRENTICE_BROWSE, _("&Browse...")); wxButton* ab = new wxButton(this, ID_APPRENTICE_BROWSE, _BUTTON_("browse"));
// set values // set values
apprentice->SetValue(settings.apprentice_location); apprentice->SetValue(settings.apprentice_location);
// init sizer // init sizer
wxSizer* s = new wxBoxSizer(wxVERTICAL); wxSizer* s = new wxBoxSizer(wxVERTICAL);
wxSizer* s2 = new wxStaticBoxSizer(wxVERTICAL, this, _("External programs")); wxSizer* s2 = new wxStaticBoxSizer(wxVERTICAL, this, _LABEL_("external programs"));
s2->Add(new wxStaticText(this, wxID_ANY, _("&Apprentice:")), 0, wxALL, 4); s2->Add(new wxStaticText(this, wxID_ANY, _LABEL_("apprentice")), 0, wxALL, 4);
wxSizer* s3 = new wxBoxSizer(wxHORIZONTAL); wxSizer* s3 = new wxBoxSizer(wxHORIZONTAL);
s3->Add(apprentice, 1, wxEXPAND | wxRIGHT, 4); s3->Add(apprentice, 1, wxEXPAND | wxRIGHT, 4);
s3->Add(ab, 0, wxEXPAND); s3->Add(ab, 0, wxEXPAND);
...@@ -195,7 +195,7 @@ void DirsPreferencesPage::store() { ...@@ -195,7 +195,7 @@ void DirsPreferencesPage::store() {
void DirsPreferencesPage::onApprenticeBrowse(wxCommandEvent&) { void DirsPreferencesPage::onApprenticeBrowse(wxCommandEvent&) {
// browse for appr.exe // browse for appr.exe
wxFileDialog dlg(this, _("Locate apprentice"), apprentice->GetValue(), _(""), _("Apprentice Executable|appr.exe"), wxOPEN); wxFileDialog dlg(this, _TITLE_("locate apprentice"), apprentice->GetValue(), _(""), _("Apprentice Executable|appr.exe"), wxOPEN);
if (dlg.ShowModal() == wxID_OK) { if (dlg.ShowModal() == wxID_OK) {
wxFileName fn(dlg.GetPath()); wxFileName fn(dlg.GetPath());
apprentice->SetValue(fn.GetPath()); apprentice->SetValue(fn.GetPath());
...@@ -214,18 +214,18 @@ UpdatePreferencesPage::UpdatePreferencesPage(Window* parent) ...@@ -214,18 +214,18 @@ UpdatePreferencesPage::UpdatePreferencesPage(Window* parent)
{ {
// init controls // init controls
check_at_startup = new wxChoice(this, wxID_ANY); check_at_startup = new wxChoice(this, wxID_ANY);
wxButton* check_now = new wxButton(this, ID_CHECK_UPDATES_NOW, _("Check &Now")); wxButton* check_now = new wxButton(this, ID_CHECK_UPDATES_NOW, _BUTTON_("check now"));
// set values // set values
check_at_startup->Append(_("Always")); // 0 check_at_startup->Append(_BUTTON_("always")); // 0
check_at_startup->Append(_("If internet connection exists")); // 1 check_at_startup->Append(_BUTTON_("if internet connection exists")); // 1
check_at_startup->Append(_("Never")); // 2 check_at_startup->Append(_BUTTON_("never")); // 2
check_at_startup->SetSelection(settings.check_updates); check_at_startup->SetSelection(settings.check_updates);
// init sizer // init sizer
wxSizer* s = new wxBoxSizer(wxVERTICAL); wxSizer* s = new wxBoxSizer(wxVERTICAL);
s->Add(new wxStaticText(this, wxID_ANY, _("&Check for new versions at startup:")), 0, wxALL, 8); s->Add(new wxStaticText(this, wxID_ANY, _LABEL_("check at startup")), 0, wxALL, 8);
s->Add(check_at_startup, 0, wxALL & ~wxTOP, 8); s->Add(check_at_startup, 0, wxALL & ~wxTOP, 8);
s->Add(check_now, 0, wxALL & ~wxTOP, 8); s->Add(check_now, 0, wxALL & ~wxTOP, 8);
s->Add(new wxStaticText(this, wxID_ANY, _("Checking for updates requires an internet connection.\nWhen no internet connection is found upates are not checked.\n\nNo information is collected when checking for updates.")), 0, wxALL & ~wxTOP, 8); s->Add(new wxStaticText(this, wxID_ANY, _LABEL_("checking requires internet")), 0, wxALL & ~wxTOP, 8);
SetSizer(s); SetSizer(s);
} }
...@@ -239,9 +239,9 @@ void UpdatePreferencesPage::store() { ...@@ -239,9 +239,9 @@ void UpdatePreferencesPage::store() {
void UpdatePreferencesPage::onCheckUpdatesNow(wxCommandEvent&) { void UpdatePreferencesPage::onCheckUpdatesNow(wxCommandEvent&) {
check_updates_now(false); check_updates_now(false);
if (!update_data_found()) { if (!update_data_found()) {
wxMessageBox(_("Checking updates failed"), _("Update Check"), wxICON_ERROR | wxOK); wxMessageBox(_ERROR_("checking updates failed"), _TITLE_("update check"), wxICON_ERROR | wxOK);
} else if (!update_available()) { } else if (!update_available()) {
wxMessageBox(_("There are no available updates."), _("Update Check"), wxICON_INFORMATION | wxOK); wxMessageBox(_ERROR_("no updates"), _TITLE_("update check"), wxICON_INFORMATION | wxOK);
} else { } else {
show_update_dialog(GetParent()); show_update_dialog(GetParent());
} }
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include <gui/update_checker.hpp> #include <gui/update_checker.hpp>
#include <gui/new_window.hpp> #include <gui/new_window.hpp>
#include <gui/preferences_window.hpp> #include <gui/preferences_window.hpp>
#include <gui/print_window.hpp>
#include <gui/icon_menu.hpp> #include <gui/icon_menu.hpp>
#include <util/window_id.hpp> #include <util/window_id.hpp>
#include <data/game.hpp> #include <data/game.hpp>
...@@ -34,7 +35,7 @@ DECLARE_TYPEOF_COLLECTION(String); ...@@ -34,7 +35,7 @@ DECLARE_TYPEOF_COLLECTION(String);
// ----------------------------------------------------------------------------- : Constructor // ----------------------------------------------------------------------------- : Constructor
SetWindow::SetWindow(Window* parent, const SetP& set) SetWindow::SetWindow(Window* parent, const SetP& set)
: wxFrame(parent, wxID_ANY, _("Magic Set Editor"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE | wxNO_FULL_REPAINT_ON_RESIZE) : wxFrame(parent, wxID_ANY, _TITLE_("magic set editor"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE | wxNO_FULL_REPAINT_ON_RESIZE)
, current_panel(nullptr) , current_panel(nullptr)
, find_dialog(nullptr) , find_dialog(nullptr)
, number_of_recent_sets(0) , number_of_recent_sets(0)
...@@ -58,8 +59,8 @@ SetWindow::SetWindow(Window* parent, const SetP& set) ...@@ -58,8 +59,8 @@ SetWindow::SetWindow(Window* parent, const SetP& set)
menuFile->AppendSeparator(); menuFile->AppendSeparator();
menuFile->Append(ID_FILE_INSPECT, _("Inspect Internal Data..."), _("Shows a the data in the set using a tree structure")); menuFile->Append(ID_FILE_INSPECT, _("Inspect Internal Data..."), _("Shows a the data in the set using a tree structure"));
menuFile->AppendSeparator(); menuFile->AppendSeparator();
menuFile->Append(ID_FILE_PRINT_PREVIEW, _MENU_("print preview"), _("Shows cards as they will be printed")); menuFile->Append(ID_FILE_PRINT_PREVIEW, _MENU_("print preview"), _HELP_("print preview"));
menuFile->Append(ID_FILE_PRINT, _MENU_("print"), _("Print cards from this set")); menuFile->Append(ID_FILE_PRINT, _MENU_("print"), _HELP_("print"));
menuFile->AppendSeparator(); menuFile->AppendSeparator();
// recent files go here // recent files go here
menuFile->AppendSeparator(); menuFile->AppendSeparator();
...@@ -67,8 +68,8 @@ SetWindow::SetWindow(Window* parent, const SetP& set) ...@@ -67,8 +68,8 @@ SetWindow::SetWindow(Window* parent, const SetP& set)
menuBar->Append(menuFile, _MENU_("file")); menuBar->Append(menuFile, _MENU_("file"));
IconMenu* menuEdit = new IconMenu(); IconMenu* menuEdit = new IconMenu();
menuEdit->Append(ID_EDIT_UNDO, _("TOOL_UNDO"), _MENU_("undo"), _("Undoes the last action")); menuEdit->Append(ID_EDIT_UNDO, _("TOOL_UNDO"), _MENU_("undo"), _HELP_("undo"));
menuEdit->Append(ID_EDIT_REDO, _("TOOL_REDO"), _MENU_("redo"), _("Redoes the last action")); menuEdit->Append(ID_EDIT_REDO, _("TOOL_REDO"), _MENU_("redo"), _HELP_("redo"));
menuEdit->AppendSeparator(); menuEdit->AppendSeparator();
menuEdit->Append(ID_EDIT_CUT, _("TOOL_CUT"), _MENU_("cut"), _("Move the selected text to the clipboard")); menuEdit->Append(ID_EDIT_CUT, _("TOOL_CUT"), _MENU_("cut"), _("Move the selected text to the clipboard"));
menuEdit->Append(ID_EDIT_COPY, _("TOOL_COPY"), _MENU_("copy"), _("Place the selected text on the clipboard")); menuEdit->Append(ID_EDIT_COPY, _("TOOL_COPY"), _MENU_("copy"), _("Place the selected text on the clipboard"));
...@@ -82,14 +83,14 @@ SetWindow::SetWindow(Window* parent, const SetP& set) ...@@ -82,14 +83,14 @@ SetWindow::SetWindow(Window* parent, const SetP& set)
menuBar->Append(menuEdit, _MENU_("edit")); menuBar->Append(menuEdit, _MENU_("edit"));
IconMenu* menuWindow = new IconMenu(); IconMenu* menuWindow = new IconMenu();
menuWindow->Append(ID_WINDOW_NEW, _ ("&New Window"), _("Creates another window to edit the same set")); menuWindow->Append(ID_WINDOW_NEW, _MENU_("new window"), _HELP_("new window"));
menuWindow->AppendSeparator(); menuWindow->AppendSeparator();
menuBar->Append(menuWindow, _MENU_("window")); menuBar->Append(menuWindow, _MENU_("window"));
IconMenu* menuHelp = new IconMenu(); IconMenu* menuHelp = new IconMenu();
menuHelp->Append(ID_HELP_INDEX, _("TOOL_HELP"), _("&Index..\tF1"), _("")); menuHelp->Append(ID_HELP_INDEX, _("TOOL_HELP"), _("&Index..\tF1"), _(""));
menuHelp->AppendSeparator(); menuHelp->AppendSeparator();
menuHelp->Append(ID_HELP_ABOUT, _("&About Magic Set Editor..."), _("")); menuHelp->Append(ID_HELP_ABOUT, _MENU_("about"), _(""));
menuBar->Append(menuHelp, _MENU_("help")); menuBar->Append(menuHelp, _MENU_("help"));
SetMenuBar(menuBar); SetMenuBar(menuBar);
...@@ -452,11 +453,11 @@ void SetWindow::onFileExportMWS(wxCommandEvent&) { ...@@ -452,11 +453,11 @@ void SetWindow::onFileExportMWS(wxCommandEvent&) {
} }
void SetWindow::onFilePrint(wxCommandEvent&) { void SetWindow::onFilePrint(wxCommandEvent&) {
// printSet(this, set); print_set(this, set);
} }
void SetWindow::onFilePrintPreview(wxCommandEvent&) { void SetWindow::onFilePrintPreview(wxCommandEvent&) {
// printPreview(this, set); print_preview(this, set);
} }
void SetWindow::onFileRecent(wxCommandEvent& ev) { void SetWindow::onFileRecent(wxCommandEvent& ev) {
......
...@@ -19,19 +19,19 @@ ...@@ -19,19 +19,19 @@
// ----------------------------------------------------------------------------- : WelcomeWindow // ----------------------------------------------------------------------------- : WelcomeWindow
WelcomeWindow::WelcomeWindow() WelcomeWindow::WelcomeWindow()
: Frame(nullptr, wxID_ANY, _("Magic Set Editor"), wxDefaultPosition, wxSize(480,340), wxDEFAULT_DIALOG_STYLE) : Frame(nullptr, wxID_ANY, _TITLE_("magic set editor"), wxDefaultPosition, wxSize(480,340), wxDEFAULT_DIALOG_STYLE)
, logo (load_resource_image(_("ABOUT"))) , logo (load_resource_image(_("ABOUT")))
, logo2(load_resource_image(_("TWO"))) , logo2(load_resource_image(_("TWO")))
{ {
SetIcon(wxIcon(_("ICON_APP"))); SetIcon(wxIcon(_("ICON_APP")));
// init controls // init controls
wxButton* new_set = new HoverButtonExt(this, ID_FILE_NEW, _("WELCOME_NEW"), _("New set"), _("Creates a new set")); wxButton* new_set = new HoverButtonExt(this, ID_FILE_NEW, _("WELCOME_NEW"), _BUTTON_("new set"), _HELP_("new"));
wxButton* open_set = new HoverButtonExt(this, ID_FILE_OPEN, _("WELCOME_OPEN"), _("Open set"), _("Open an existing set")); wxButton* open_set = new HoverButtonExt(this, ID_FILE_OPEN, _("WELCOME_OPEN"), _BUTTON_("open set"), _HELP_("open"));
wxButton* open_last = 0; wxButton* open_last = 0;
if (!settings.recent_sets.empty()) { if (!settings.recent_sets.empty()) {
wxFileName n(settings.recent_sets.front()); wxFileName n(settings.recent_sets.front());
open_last = new HoverButtonExt(this, ID_FILE_RECENT, _("WELCOME_LAST"), _("Last opened set"), _("Open '") + n.GetName() + _("'")); open_last = new HoverButtonExt(this, ID_FILE_RECENT, _("WELCOME_LAST"), _BUTTON_("last opened set"), _("Open '") + n.GetName() + _("'"));
} }
wxSizer* s1 = new wxBoxSizer(wxHORIZONTAL); wxSizer* s1 = new wxBoxSizer(wxHORIZONTAL);
......
...@@ -537,30 +537,12 @@ ...@@ -537,30 +537,12 @@
<File <File
RelativePath=".\gui\control\card_editor.hpp"> RelativePath=".\gui\control\card_editor.hpp">
</File> </File>
<File
RelativePath=".\gui\control\card_list.cpp">
</File>
<File
RelativePath=".\gui\control\card_list.hpp">
</File>
<File
RelativePath=".\gui\control\card_list_column_select.cpp">
</File>
<File
RelativePath=".\gui\control\card_list_column_select.hpp">
</File>
<File <File
RelativePath=".\gui\control\card_viewer.cpp"> RelativePath=".\gui\control\card_viewer.cpp">
</File> </File>
<File <File
RelativePath=".\gui\control\card_viewer.hpp"> RelativePath=".\gui\control\card_viewer.hpp">
</File> </File>
<File
RelativePath=".\gui\control\filtered_card_list.cpp">
</File>
<File
RelativePath=".\gui\control\filtered_card_list.hpp">
</File>
<File <File
RelativePath=".\gui\control\gallery_list.cpp"> RelativePath=".\gui\control\gallery_list.cpp">
</File> </File>
...@@ -573,12 +555,6 @@ ...@@ -573,12 +555,6 @@
<File <File
RelativePath=".\gui\control\graph.hpp"> RelativePath=".\gui\control\graph.hpp">
</File> </File>
<File
RelativePath=".\gui\control\image_card_list.cpp">
</File>
<File
RelativePath=".\gui\control\image_card_list.hpp">
</File>
<File <File
RelativePath=".\gui\control\native_look_editor.cpp"> RelativePath=".\gui\control\native_look_editor.cpp">
</File> </File>
...@@ -591,18 +567,46 @@ ...@@ -591,18 +567,46 @@
<File <File
RelativePath=".\gui\control\package_list.hpp"> RelativePath=".\gui\control\package_list.hpp">
</File> </File>
<File
RelativePath=".\gui\control\select_card_list.cpp">
</File>
<File
RelativePath=".\gui\control\select_card_list.hpp">
</File>
<File <File
RelativePath=".\gui\control\text_ctrl.cpp"> RelativePath=".\gui\control\text_ctrl.cpp">
</File> </File>
<File <File
RelativePath=".\gui\control\text_ctrl.hpp"> RelativePath=".\gui\control\text_ctrl.hpp">
</File> </File>
<Filter
Name="card_list"
Filter="">
<File
RelativePath=".\gui\control\card_list.cpp">
</File>
<File
RelativePath=".\gui\control\card_list.hpp">
</File>
<File
RelativePath=".\gui\control\card_list_column_select.cpp">
</File>
<File
RelativePath=".\gui\control\card_list_column_select.hpp">
</File>
<File
RelativePath=".\gui\control\filtered_card_list.cpp">
</File>
<File
RelativePath=".\gui\control\filtered_card_list.hpp">
</File>
<File
RelativePath=".\gui\control\image_card_list.cpp">
</File>
<File
RelativePath=".\gui\control\image_card_list.hpp">
</File>
<File
RelativePath=".\gui\control\select_card_list.cpp">
</File>
<File
RelativePath=".\gui\control\select_card_list.hpp">
</File>
</Filter>
</Filter> </Filter>
<Filter <Filter
Name="symbol" Name="symbol"
...@@ -839,6 +843,12 @@ ...@@ -839,6 +843,12 @@
<File <File
RelativePath=".\gui\about_window.hpp"> RelativePath=".\gui\about_window.hpp">
</File> </File>
<File
RelativePath=".\gui\card_select_window.cpp">
</File>
<File
RelativePath=".\gui\card_select_window.hpp">
</File>
<File <File
RelativePath=".\gui\drop_down_list.cpp"> RelativePath=".\gui\drop_down_list.cpp">
</File> </File>
...@@ -863,6 +873,12 @@ ...@@ -863,6 +873,12 @@
<File <File
RelativePath=".\gui\preferences_window.hpp"> RelativePath=".\gui\preferences_window.hpp">
</File> </File>
<File
RelativePath=".\gui\print_window.cpp">
</File>
<File
RelativePath=".\gui\print_window.hpp">
</File>
<File <File
RelativePath=".\gui\thumbnail_thread.cpp"> RelativePath=".\gui\thumbnail_thread.cpp">
</File> </File>
...@@ -2565,6 +2581,9 @@ ...@@ -2565,6 +2581,9 @@
<File <File
RelativePath=".\code_template.hpp"> RelativePath=".\code_template.hpp">
</File> </File>
<File
RelativePath="..\data\en.mse-locale\locale">
</File>
<File <File
RelativePath=".\main.cpp"> RelativePath=".\main.cpp">
</File> </File>
......
...@@ -27,6 +27,7 @@ enum LocaleCategory ...@@ -27,6 +27,7 @@ enum LocaleCategory
, LOCALE_CAT_TOOL , LOCALE_CAT_TOOL
, LOCALE_CAT_LABEL , LOCALE_CAT_LABEL
, LOCALE_CAT_BUTTON , LOCALE_CAT_BUTTON
, LOCALE_CAT_TITLE
, LOCALE_CAT_TYPE , LOCALE_CAT_TYPE
, LOCALE_CAT_ACTION , LOCALE_CAT_ACTION
, LOCALE_CAT_ERROR , LOCALE_CAT_ERROR
...@@ -44,8 +45,10 @@ String tr(LocaleCategory cat, const String& key); ...@@ -44,8 +45,10 @@ String tr(LocaleCategory cat, const String& key);
#define _TOOL_(s) tr(LOCALE_CAT_TOOL, _(s)) #define _TOOL_(s) tr(LOCALE_CAT_TOOL, _(s))
/// A localized string for labels /// A localized string for labels
#define _LABEL_(s) tr(LOCALE_CAT_LABEL, _(s)) #define _LABEL_(s) tr(LOCALE_CAT_LABEL, _(s))
/// A localized string for buttons /// A localized string for buttons/checkboxes/etc.
#define _BUTTON_(s) tr(LOCALE_CAT_BUTTON,_(s)) #define _BUTTON_(s) tr(LOCALE_CAT_BUTTON,_(s))
/// A localized string for window titles
#define _TITLE_(s) tr(LOCALE_CAT_TITLE, _(s))
/// A localized string for type names in scripts /// A localized string for type names in scripts
#define _TYPE_(s) tr(LOCALE_CAT_TYPE, _(s)) #define _TYPE_(s) tr(LOCALE_CAT_TYPE, _(s))
/// A localized string for action names /// A localized string for action names
......
...@@ -174,6 +174,9 @@ enum ControlID { ...@@ -174,6 +174,9 @@ enum ControlID {
, ID_MOVE_DOWN , ID_MOVE_DOWN
, ID_SHOW , ID_SHOW
, ID_HIDE , ID_HIDE
// Card select
, ID_SELECT_ALL
, ID_SELECT_NONE
// Settings // Settings
, ID_NOTEBOOK , ID_NOTEBOOK
, ID_APPRENTICE_BROWSE , ID_APPRENTICE_BROWSE
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment