View | Details | Raw Unified
Collapse All | Expand All

(-) rapidsvn-0.6.0/src/about_dlg.cpp (-17 / +17 lines)
 Lines 27-33    Link Here 
#include "res/bitmaps/logo.xpm"
#include "res/bitmaps/logo.xpm"
AboutDlg::AboutDlg (wxWindow * parent)
AboutDlg::AboutDlg (wxWindow * parent)
  : wxDialog (parent, -1, "", wxDefaultPosition)
  : wxDialog (parent, -1, wxString(), wxDefaultPosition)
{
{
  wxString title;
  wxString title;
  title.Printf (_("About %s"), APPLICATION_NAME);
  title.Printf (_("About %s"), APPLICATION_NAME);
 Lines 35-41    Link Here 
  std::vector<std::string> schemasVector =
  std::vector<std::string> schemasVector =
    svn::Url::supportedSchemas ();
    svn::Url::supportedSchemas ();
  wxString schemasStr ("");
  wxString schemasStr;
  std::vector<std::string>::const_iterator it;
  std::vector<std::string>::const_iterator it;
  bool first = true;
  bool first = true;
  for (it = schemasVector.begin (); it != schemasVector.end (); it++)
  for (it = schemasVector.begin (); it != schemasVector.end (); it++)
 Lines 43-52    Link Here 
    if (first)
    if (first)
      first = false;
      first = false;
    else
    else
      schemasStr += "\n";
      schemasStr += wxString("\n", wxConvLocal);
    std::string schema = *it;
    std::string schema = *it;
    schemasStr += "- ";
    schemasStr += wxString("- ", wxConvLocal);
    schemasStr += schema.c_str ();
    schemasStr += wxString(schema.c_str (), wxConvLocal);
  }
  }
    
    
 Lines 69-102    Link Here 
                     SVN_VER_MICRO);
                     SVN_VER_MICRO);
  wxString wx;
  wxString wx;
  wx.Printf ("wxWindows %d.%d.%d",
  wx.Printf (_("wxWindows %d.%d.%d"),
             wxMAJOR_VERSION, 
             wxMAJOR_VERSION, 
             wxMINOR_VERSION, 
             wxMINOR_VERSION, 
             wxRELEASE_NUMBER);
             wxRELEASE_NUMBER);
  
  
  wxString copy;
  wxString copy;
  copy.Printf ("%s\n" // version
  copy.Printf (_("%s\n" // version
               "%s\n" // milestone
                 "%s\n" // milestone
               "\n%s\n\n" // copyright
                 "\n%s\n\n" // copyright
               "%s\n" // for more information
                 "%s\n" // for more information
               "http://rapidsvn.tigris.org\n",
                 "http://rapidsvn.tigris.org\n"),
               version.c_str (),
               version.c_str (),
               milestone.c_str (),
               milestone.c_str (),
               RAPIDSVN_COPYRIGHT,
               RAPIDSVN_COPYRIGHT,
               _("For more information see:"));
               _("For more information see:"));
  wxString built;
  wxString built;
  built.Printf ("%s\n" // built with
  built.Printf (_("%s\n" // built with
                "%s\n" // subversion
                  "%s\n" // subversion
                "\n"
                  "\n"
                "%s", // wxwindows
                  "%s"), // wxwindows
                _("Built with:"),
                _("Built with:"),
                subversion.c_str (),
                subversion.c_str (),
                wx.c_str ());
                wx.c_str ());
  wxString schemas;
  wxString schemas;
  schemas.Printf ("%s\n" // "supported url schemas"
  schemas.Printf (_("%s\n" // "supported url schemas"
                  "%s", // list of schemas
                    "%s"), // list of schemas
                  _("Supported URL schemas: "),
                  _("Supported URL schemas: "),
                  schemasStr.c_str ());
                  schemasStr.c_str ());
(-) rapidsvn-0.6.0/src/action.cpp (-5 / +5 lines)
 Lines 26-32    Link Here 
// subversion api
// subversion api
#include "svn_wc.h"
#include "svn_wc.h"
static const char *
static const wxChar *
ACTION_NAMES [] =
ACTION_NAMES [] =
{
{
  _("Add"),           // svn_wc_notify_add,
  _("Add"),           // svn_wc_notify_add,
 Lines 275-281    Link Here 
  if (result)
  if (result)
  {
  {
    wxSetWorkingDirectory (m->path.c_str ());
    wxSetWorkingDirectory (wxString(m->path.c_str (), wxConvLocal));
  }
  }
  return result;
  return result;
 Lines 290-302    Link Here 
const char * 
const char * 
Action::GetName () const
Action::GetName () const
{
{
  return m->name.c_str ();
  return m->name.ToAscii ();
}
}
void
void
Action::SetName (const char * name)
Action::SetName (const char * name)
{
{
  m->name = name;
  m->name = wxString(name, wxConvLocal);
}
}
void
void
 Lines 336-342    Link Here 
  if (revision.kind () == revision.HEAD)
  if (revision.kind () == revision.HEAD)
    revStr = _("HEAD");
    revStr = _("HEAD");
  else
  else
    revStr.Printf ("%" SVN_REVNUM_T_FMT, revision.revnum ());
    revStr.Printf (_("%" SVN_REVNUM_T_FMT), revision.revnum ());
  wxString msg;
  wxString msg;
  msg.Printf (_("Get file %s rev. %s"),
  msg.Printf (_("Get file %s rev. %s"),
(-) rapidsvn-0.6.0/src/auth_dlg.cpp (-4 / +4 lines)
 Lines 43-49    Link Here 
        new wxStaticText (window, -1, _("User"));
        new wxStaticText (window, -1, _("User"));
      textUser = new wxTextCtrl (
      textUser = new wxTextCtrl (
        window, -1, "", wxDefaultPosition, wxDefaultSize, 0,
        window, -1, _(""), wxDefaultPosition, wxDefaultSize, 0,
        wxTextValidator (wxFILTER_NONE, &Username));
        wxTextValidator (wxFILTER_NONE, &Username));
    }
    }
 Lines 51-57    Link Here 
      new wxStaticText (window, -1, _("Password"));
      new wxStaticText (window, -1, _("Password"));
    wxTextCtrl* textPassword = new wxTextCtrl (
    wxTextCtrl* textPassword = new wxTextCtrl (
      window, -1, "", wxPoint(-1,-1), 
      window, -1, _(""), wxPoint(-1,-1), 
      wxDefaultSize, wxTE_PASSWORD, 
      wxDefaultSize, wxTE_PASSWORD, 
      wxTextValidator (wxFILTER_NONE, &Password));
      wxTextValidator (wxFILTER_NONE, &Password));
 Lines 117-129    Link Here 
const char * 
const char * 
AuthDlg::GetUsername () const
AuthDlg::GetUsername () const
{
{
  return m->Username.c_str ();
  return m->Username.ToAscii ();
}
}
const char *
const char *
AuthDlg::GetPassword () const
AuthDlg::GetPassword () const
{
{
  return m->Password.c_str ();
  return m->Password.ToAscii ();
}
}
/* -----------------------------------------------------------------
/* -----------------------------------------------------------------
(-) rapidsvn-0.6.0/src/bookmarks.cpp (-5 / +5 lines)
 Lines 70-82    Link Here 
  void 
  void 
  AddBookmark (const char * name_)
  AddBookmark (const char * name_)
  {
  {
    wxString name (name_);
    wxString name (name_, wxConvLocal);
    TrimString (name);
    TrimString (name);
    if (!svn::Url::isValid (name_))
    if (!svn::Url::isValid (name_))
    {
    {
      wxFileName filename (name_);
      wxFileName filename (name);
      name = filename.GetFullPath (wxPATH_NATIVE);
      name = filename.GetFullPath (wxPATH_NATIVE);
    }
    }
 Lines 93-99    Link Here 
  bool
  bool
  RemoveBookmark (const char * path)
  RemoveBookmark (const char * path)
  {
  {
    int index = bookmarks.Index (path);
    int index = bookmarks.Index (wxString(path, wxConvLocal));
    if (index == wxNOT_FOUND)
    if (index == wxNOT_FOUND)
      return false;
      return false;
 Lines 171-177    Link Here 
Bookmarks::GetBookmark (const size_t index) const
Bookmarks::GetBookmark (const size_t index) const
{
{
  wxString bookmark = m->bookmarks[index];
  wxString bookmark = m->bookmarks[index];
  return bookmark.c_str ();
  return bookmark.ToAscii();
}
}
svn::Context *
svn::Context *
 Lines 187-193    Link Here 
svn::Context *
svn::Context *
Bookmarks::GetContext (const char * path)
Bookmarks::GetContext (const char * path)
{
{
  int index = m->bookmarks.Index (path);
  int index = m->bookmarks.Index (wxString(path, wxConvLocal));
  if (index == wxNOT_FOUND)
  if (index == wxNOT_FOUND)
    return 0;
    return 0;
(-) rapidsvn-0.6.0/src/cert_dlg.cpp (-8 / +8 lines)
 Lines 33-39    Link Here 
typedef struct
typedef struct
{
{
  wxUint32 failure;
  wxUint32 failure;
  const char * descr;
  const wxChar * descr;
} FailureEntry;
} FailureEntry;
static const FailureEntry CERT_FAILURES [] =
static const FailureEntry CERT_FAILURES [] =
 Lines 66-72    Link Here 
  wxStaticText * labelTitle = new wxStaticText (
  wxStaticText * labelTitle = new wxStaticText (
    this, -1, _("There were errors validating the server certificate.\nDo you want to trust this certificate?"));
    this, -1, _("There were errors validating the server certificate.\nDo you want to trust this certificate?"));
  wxString failureStr ("");
  wxString failureStr (_(""));
  const int count = sizeof (CERT_FAILURES)/sizeof (CERT_FAILURES[0]);
  const int count = sizeof (CERT_FAILURES)/sizeof (CERT_FAILURES[0]);
  for (int i=0; i < count; i++)
  for (int i=0; i < count; i++)
 Lines 74-80    Link Here 
    if ((CERT_FAILURES[i].failure & trustData.failures) != 0)
    if ((CERT_FAILURES[i].failure & trustData.failures) != 0)
    {
    {
      failureStr += CERT_FAILURES[i].descr;
      failureStr += CERT_FAILURES[i].descr;
      failureStr += "\n";
      failureStr += _("\n");
    }
    }
  }
  }
 Lines 94-116    Link Here 
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, _("Hostname:")));
    this, -1, _("Hostname:")));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, trustData.hostname.c_str ()));
    this, -1, wxString(trustData.hostname.c_str(), wxConvLocal) ) );
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, _("Issue:")));
    this, -1, _("Issue:")));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, trustData.issuerDName.c_str ()));
    this, -1, wxString(trustData.issuerDName.c_str(), wxConvLocal) ));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, _("Valid from:")));
    this, -1, _("Valid from:")));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, trustData.validFrom.c_str ()));
    this, -1, wxString(trustData.validFrom.c_str(), wxConvLocal) ));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, _("Valid until:")));
    this, -1, _("Valid until:")));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, trustData.validUntil.c_str ()));
    this, -1, wxString(trustData.validUntil.c_str(), wxConvLocal) ));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, _("Fingerprint:")));
    this, -1, _("Fingerprint:")));
  certSizer->Add (new wxStaticText (
  certSizer->Add (new wxStaticText (
    this, -1, trustData.fingerprint.c_str ()));
    this, -1, wxString(trustData.fingerprint.c_str(), wxConvLocal) ));
  wxStaticBox * certBox = new wxStaticBox (
  wxStaticBox * certBox = new wxStaticBox (
    this, -1, _("Certificate Information:"));
    this, -1, _("Certificate Information:"));
(-) rapidsvn-0.6.0/src/checkout_action.cpp (-2 / +2 lines)
 Lines 67-74    Link Here 
  }
  }
  
  
  wxSetWorkingDirectory (m_data.DestFolder);
  wxSetWorkingDirectory (m_data.DestFolder);
  client.checkout (m_data.RepUrl.c_str (), 
  client.checkout (m_data.RepUrl.ToAscii (), 
                   m_data.DestFolder.c_str (), 
                   svn::Path(m_data.DestFolder.ToAscii ()), 
                   revision, m_data.Recursive);
                   revision, m_data.Recursive);
  // now post event to add bookmark to bookmarks
  // now post event to add bookmark to bookmarks
(-) rapidsvn-0.6.0/src/checkout_dlg.cpp (-5 / +5 lines)
 Lines 44-66    Link Here 
    // create controls
    // create controls
    wxTextValidator valModule (wxFILTER_NONE, &data.RepUrl);
    wxTextValidator valModule (wxFILTER_NONE, &data.RepUrl);
    m_textRepUrl = 
    m_textRepUrl = 
      new wxTextCtrl (wnd, -1, "", wxPoint(-1,-1),
      new wxTextCtrl (wnd, -1, _(""), wxPoint(-1,-1),
                      wxSize(235, -1), 0, valModule);
                      wxSize(235, -1), 0, valModule);
    wxStaticBox* destBox = 
    wxStaticBox* destBox = 
      new wxStaticBox(wnd, 0, _("Destination Directory"));
      new wxStaticBox(wnd, 0, _("Destination Directory"));
    wxTextValidator valDest (wxFILTER_NONE, &data.DestFolder);
    wxTextValidator valDest (wxFILTER_NONE, &data.DestFolder);
    m_textDest = 
    m_textDest = 
      new wxTextCtrl (wnd, -1, "", wxDefaultPosition, 
      new wxTextCtrl (wnd, -1, _(""), wxDefaultPosition, 
                      wxSize(205, -1), 0, valDest);
                      wxSize(205, -1), 0, valDest);
    wxButton* browse = 
    wxButton* browse = 
      new wxButton(wnd, ID_BUTTON_BROWSE, "...", 
      new wxButton(wnd, ID_BUTTON_BROWSE, _("..."), 
                   wxDefaultPosition, wxSize(20, -1) );
                   wxDefaultPosition, wxSize(20, -1) );
    wxStaticBox* revisionBox = 
    wxStaticBox* revisionBox = 
      new wxStaticBox(wnd, -1, _("Revision"));
      new wxStaticBox(wnd, -1, _("Revision"));
    wxTextValidator valRevision (wxFILTER_NUMERIC, &data.Revision);
    wxTextValidator valRevision (wxFILTER_NUMERIC, &data.Revision);
    m_textRevision = 
    m_textRevision = 
      new wxTextCtrl (wnd, -1, "", wxDefaultPosition, 
      new wxTextCtrl (wnd, -1, _(""), wxDefaultPosition, 
                      wxSize(50, -1), 0, valRevision);                             
                      wxSize(50, -1), 0, valRevision);                             
    wxGenericValidator valLatest (&data.UseLatest);
    wxGenericValidator valLatest (&data.UseLatest);
    m_checkUseLatest = 
    m_checkUseLatest = 
 Lines 134-140    Link Here 
    bool ok = true;
    bool ok = true;
    if (!checked)
    if (!checked)
    {
    {
      ok = CheckRevision (m_textRevision->GetValue ());
      ok = CheckRevision (m_textRevision->GetValue ().ToAscii());
    }
    }
    if (m_textDest->GetValue ().Length () <= 0)
    if (m_textDest->GetValue ().Length () <= 0)
(-) rapidsvn-0.6.0/src/cleanup_action.cpp (-1 / +1 lines)
 Lines 40-46    Link Here 
  svn::Client client (GetContext ());
  svn::Client client (GetContext ());
  const svn::Path & path = GetPath ();
  const svn::Path & path = GetPath ();
  wxSetWorkingDirectory (path.c_str ());
  wxSetWorkingDirectory (wxString(path.c_str (), wxConvLocal));
  client.cleanup (path.c_str ());
  client.cleanup (path.c_str ());
  return true;
  return true;
(-) rapidsvn-0.6.0/src/commit_action.cpp (-5 / +5 lines)
 Lines 45-52    Link Here 
    return false;
    return false;
  }
  }
  m_recursive = dlg.GetRecursive ();
  m_recursive = dlg.GetRecursive();
  m_message = dlg.GetMessage ();
  m_message = wxString(dlg.GetMessage (), wxConvLocal);
  return true;
  return true;
}
}
 Lines 59-66    Link Here 
  // WORKAROUND: CONVERT TO UTF8
  // WORKAROUND: CONVERT TO UTF8
  // message = m_message.c_str ();
  // message = m_message.c_str ();
  wxString messageUtf8 (m_message.mb_str (wxConvUTF8));
  wxString messageUtf8 (m_message.mb_str (wxConvUTF8), wxConvLocal);
  const char * message = messageUtf8.c_str ();
  const char * message = messageUtf8.ToAscii ();
  svn::Pool pool;
  svn::Pool pool;
  long revision = 
  long revision = 
 Lines 68-74    Link Here 
                   m_recursive);
                   m_recursive);
  wxString str;
  wxString str;
  str = wxString::Format ("Committed revision %" SVN_REVNUM_T_FMT ".",
  str = wxString::Format (_("Committed revision %" SVN_REVNUM_T_FMT "."),
                             revision);
                             revision);
  Trace (str);
  Trace (str);
(-) rapidsvn-0.6.0/src/commit_dlg.cpp (-4 / +4 lines)
 Lines 25-31    Link Here 
  bool recursive;
  bool recursive;
  Data (wxWindow * window)
  Data (wxWindow * window)
    : message (""), recursive (false)
    : message (_("")), recursive (false)
  {
  {
    // create controls
    // create controls
    wxStaticBox* msgBox = 
    wxStaticBox* msgBox = 
 Lines 37-50    Link Here 
    wxTextCtrl* msg;
    wxTextCtrl* msg;
    {
    {
      wxTextValidator val (wxFILTER_NONE, &message);
      wxTextValidator val (wxFILTER_NONE, &message);
      msg = new wxTextCtrl (window, -1, "", wxDefaultPosition, 
      msg = new wxTextCtrl (window, -1, _(""), wxDefaultPosition, 
                            msgSize, wxTE_MULTILINE, val);
                            msgSize, wxTE_MULTILINE, val);
    }
    }
    wxCheckBox * checkRecursive;
    wxCheckBox * checkRecursive;
    {
    {
      wxGenericValidator val (&recursive);
      wxGenericValidator val (&recursive);
      checkRecursive = 
      checkRecursive = 
        new wxCheckBox (window, -1, "Recursive",
        new wxCheckBox (window, -1, _("Recursive"),
                        wxDefaultPosition, wxDefaultSize, 0,
                        wxDefaultPosition, wxDefaultSize, 0,
                        val);
                        val);
    }
    }
 Lines 105-111    Link Here 
const char *
const char *
CommitDlg::GetMessage () const
CommitDlg::GetMessage () const
{
{
  return m->message;
  return m->message.ToAscii();
}
}
bool
bool
(-) rapidsvn-0.6.0/src/delete_action.cpp (-3 / +3 lines)
 Lines 68-74    Link Here 
    // handled by subversion
    // handled by subversion
    if (status.isVersioned ())
    if (status.isVersioned ())
      client.remove (path, m_force);
      client.remove (path, m_force);
    else if (wxDirExists (cpath))
    else if (wxDirExists (wxString(cpath, wxConvLocal).c_str()))
    {
    {
      // we dont want to delete unversioned directories...
      // we dont want to delete unversioned directories...
      wxString msg;
      wxString msg;
 Lines 76-89    Link Here 
                  cpath);
                  cpath);
      Trace (msg);
      Trace (msg);
    }
    }
    else if (wxFileExists (cpath))
    else if (wxFileExists (wxString(cpath, wxConvLocal).c_str()))
    {
    {
      wxString msg;
      wxString msg;
      msg.Printf (_("Deleting unversioned file: %s"),
      msg.Printf (_("Deleting unversioned file: %s"),
                  cpath);
                  cpath);
      Trace (msg);
      Trace (msg);
      wxRemoveFile (cpath);
      wxRemoveFile (wxString(cpath, wxConvLocal));
    }
    }
  }
  }
(-) rapidsvn-0.6.0/src/delete_dlg.cpp (-1 / +1 lines)
 Lines 35-41    Link Here 
    topSizer->Add (label, 0, wxALL, 5);
    topSizer->Add (label, 0, wxALL, 5);
    // The "force" check box:
    // The "force" check box:
    wxCheckBox* check = new wxCheckBox(window, -1, "Force removal",
    wxCheckBox* check = new wxCheckBox(window, -1, _("Force removal"),
      wxDefaultPosition, wxDefaultSize, 0,
      wxDefaultPosition, wxDefaultSize, 0,
      wxGenericValidator(&force));
      wxGenericValidator(&force));
    
    
(-) rapidsvn-0.6.0/src/destination_dlg.cpp (-6 / +6 lines)
 Lines 26-32    Link Here 
  Data (wxWindow * window, const char * descr, 
  Data (wxWindow * window, const char * descr, 
        int flags, const char * dest)
        int flags, const char * dest)
    : destination (dest), force (false)
    : destination (dest, wxConvLocal), force (false)
  {
  {
    bool withForce = (flags & WITH_FORCE) != 0;
    bool withForce = (flags & WITH_FORCE) != 0;
 Lines 35-47    Link Here 
    // The description:
    // The description:
    wxStaticText * labelDescr = 
    wxStaticText * labelDescr = 
      new wxStaticText (window, -1, descr);
      new wxStaticText (window, -1, wxString(descr, wxConvLocal));
    mainSizer->Add (labelDescr, 0, wxALL, 5);
    mainSizer->Add (labelDescr, 0, wxALL, 5);
    // The destination:
    // The destination:
    wxTextValidator val (wxFILTER_NONE, &destination);
    wxTextValidator val (wxFILTER_NONE, &destination);
    wxTextCtrl * textDest = 
    wxTextCtrl * textDest = 
      new wxTextCtrl (window, -1, "", wxDefaultPosition, 
      new wxTextCtrl (window, -1, _(""), wxDefaultPosition, 
                      wxSize (200, -1), 0, val);
                      wxSize (200, -1), 0, val);
      
      
    mainSizer->Add (textDest, 0, wxALL | wxEXPAND, 5);
    mainSizer->Add (textDest, 0, wxALL | wxEXPAND, 5);
 Lines 88-94    Link Here 
                               const char * descr, 
                               const char * descr, 
                               const int flags,
                               const int flags,
                               const char * dst)
                               const char * dst)
 : wxDialog(parent, -1, title,
 : wxDialog(parent, -1, wxString(title, wxConvLocal),
            wxDefaultPosition, wxDefaultSize, 
            wxDefaultPosition, wxDefaultSize, 
            DIALOG_FLAGS)
            DIALOG_FLAGS)
{
{
 Lines 111-117    Link Here 
                        const char * descr, const int flags,
                        const char * descr, const int flags,
                        const char * dst)
                        const char * dst)
{
{
  wxDialog::Create (parent, -1, title, wxDefaultPosition,
  wxDialog::Create (parent, -1, wxString(title, wxConvLocal), wxDefaultPosition,
                    wxDefaultSize, DIALOG_FLAGS);
                    wxDefaultSize, DIALOG_FLAGS);
  m = new Data (this, descr, flags, dst);
  m = new Data (this, descr, flags, dst);
 Lines 120-126    Link Here 
const char *
const char *
DestinationDlg::GetDestination () const
DestinationDlg::GetDestination () const
{
{
  return m->destination;
  return m->destination.ToAscii();
}
}
bool
bool
(-) rapidsvn-0.6.0/src/diff_action.cpp (-5 / +5 lines)
 Lines 112-118    Link Here 
  getPath1 (const svn::Path & path)
  getPath1 (const svn::Path & path)
  {
  {
    if (diffData.useUrl1)
    if (diffData.useUrl1)
      return diffData.url1.c_str ();
      return static_cast<const char *>(diffData.url1.ToAscii());
    else
    else
      return path;
      return path;
  }
  }
 Lines 125-131    Link Here 
  getPath2 (const svn::Path & path)
  getPath2 (const svn::Path & path)
  {
  {
    if (diffData.useUrl2)
    if (diffData.useUrl2)
      return diffData.url2.c_str ();
      return static_cast<const char *>(diffData.url2.ToAscii());
    else
    else
      return path;
      return path;
  }
  }
 Lines 204-212    Link Here 
    Preferences prefs;
    Preferences prefs;
    wxString argv;
    wxString argv;
    wxString dstFile1Native (dstFile1.native ().c_str ());
    wxString dstFile1Native (dstFile1.native ().c_str(), wxConvLocal);
    wxString dstFile2Native (dstFile2.native ().c_str ());
    wxString dstFile2Native (dstFile2.native ().c_str(), wxConvLocal);
    argv.Printf ("\"%s\" \"%s\" \"%s\"", prefs.diffTool.c_str (), 
    argv.Printf (_("\"%s\" \"%s\" \"%s\""), prefs.diffTool.c_str (), 
                 dstFile1Native.c_str (), dstFile2Native.c_str ());
                 dstFile1Native.c_str (), dstFile2Native.c_str ());
    wxString msg;
    wxString msg;
(-) rapidsvn-0.6.0/src/diff_data.hpp (-2 / +2 lines)
 Lines 46-53    Link Here 
  /** Constructor */
  /** Constructor */
  DiffData ()
  DiffData ()
    : compareType (WITH_SAME_REVISION),
    : compareType (WITH_SAME_REVISION),
      useUrl1 (false), url1 (""),
      useUrl1 (false), url1 (_("")),
      useUrl2 (false), url2 ("")
      useUrl2 (false), url2 (_(""))
  {
  {
  }
  }
};
};
(-) rapidsvn-0.6.0/src/diff_dlg.cpp (-10 / +10 lines)
 Lines 102-108    Link Here 
    if (mRadioUseRevision->GetValue ())
    if (mRadioUseRevision->GetValue ())
    {
    {
      if (!mCheckUseLatest->GetValue ())
      if (!mCheckUseLatest->GetValue ())
        valid = CheckRevision (mTextRevision->GetValue ());
        valid = CheckRevision (mTextRevision->GetValue ().ToAscii());
    }
    }
    else 
    else 
      valid = CheckDateTime (mTextDate->GetValue ());
      valid = CheckDateTime (mTextDate->GetValue ());
 Lines 162-185    Link Here 
    {
    {
      mRadioUseDate->SetValue (true);
      mRadioUseDate->SetValue (true);
      mTextDate->SetValue (
      mTextDate->SetValue (
        FormatDateTime (revision.date (), "%c"));
        FormatDateTime (revision.date (), _("%c")));
      mTextRevision->SetValue ("");
      mTextRevision->SetValue (_(""));
      mCheckUseLatest->SetValue (true);
      mCheckUseLatest->SetValue (true);
    }
    }
    else
    else
    {
    {
      mRadioUseRevision->SetValue (true);
      mRadioUseRevision->SetValue (true);
      mTextDate->SetValue ("");
      mTextDate->SetValue (_(""));
      if (revision.kind () == svn_opt_revision_head)
      if (revision.kind () == svn_opt_revision_head)
      {
      {
        mTextRevision->SetValue ("");
        mTextRevision->SetValue (_(""));
        mCheckUseLatest->SetValue (true);
        mCheckUseLatest->SetValue (true);
      }
      }
      else
      else
      {
      {
        wxString value;
        wxString value;
        value.Printf ("%" SVN_REVNUM_T_FMT, revision.revnum ());
        value.Printf (_("%" SVN_REVNUM_T_FMT), revision.revnum ());
        mTextRevision->SetValue (value);
        mTextRevision->SetValue (value);
        mCheckUseLatest->SetValue (false);
        mCheckUseLatest->SetValue (false);
      }
      }
 Lines 250-256    Link Here 
    mRadioUseRevision = new wxRadioButton (
    mRadioUseRevision = new wxRadioButton (
      this, ID_UseRevision, _("Revision:"));
      this, ID_UseRevision, _("Revision:"));
    mRadioUseRevision->SetValue (true);
    mRadioUseRevision->SetValue (true);
    mTextRevision = new wxTextCtrl (this, ID_Revision, "");
    mTextRevision = new wxTextCtrl (this, ID_Revision, _(""));
    mCheckUseLatest = new wxCheckBox (
    mCheckUseLatest = new wxCheckBox (
      this, ID_UseLatest, _("Use latest"));
      this, ID_UseLatest, _("Use latest"));
    mCheckUseLatest->SetValue (true);
    mCheckUseLatest->SetValue (true);
 Lines 265-271    Link Here 
    // second row: date
    // second row: date
    mRadioUseDate = new wxRadioButton (
    mRadioUseDate = new wxRadioButton (
      this, ID_UseDate, _("Date:"));
      this, ID_UseDate, _("Date:"));
    mTextDate = new wxTextCtrl (this, ID_Date, "");
    mTextDate = new wxTextCtrl (this, ID_Date, _(""));
    gridSizer->Add (mRadioUseDate);
    gridSizer->Add (mRadioUseDate);
    gridSizer->Add (mTextDate);
    gridSizer->Add (mTextDate);
 Lines 274-280    Link Here 
    // third row: url
    // third row: url
    mCheckUseUrl = new wxCheckBox (
    mCheckUseUrl = new wxCheckBox (
      this, ID_UseUrl, _("Use Url/Path:"));
      this, ID_UseUrl, _("Use Url/Path:"));
    mTextUrl = new wxTextCtrl (this, ID_Url, "");
    mTextUrl = new wxTextCtrl (this, ID_Url, _(""));
    mButtonBrowse = CreateEllipsisButton (this, ID_Browse);
    mButtonBrowse = CreateEllipsisButton (this, ID_Browse);
    gridSizer->Add (mCheckUseUrl);
    gridSizer->Add (mCheckUseUrl);
    gridSizer->Add (mTextUrl, 0, wxEXPAND);
    gridSizer->Add (mTextUrl, 0, wxEXPAND);
 Lines 505-511    Link Here 
        this, -1, _("Compare:"));
        this, -1, _("Compare:"));
      mComboCmpType = new wxComboBox (
      mComboCmpType = new wxComboBox (
        this, ID_CompareType, "", wxDefaultPosition, wxDefaultSize, 
        this, ID_CompareType, _(""), wxDefaultPosition, wxDefaultSize, 
        WXSIZEOF (COMPARE_TYPE_LABELS), COMPARE_TYPE_LABELS, 
        WXSIZEOF (COMPARE_TYPE_LABELS), COMPARE_TYPE_LABELS, 
        wxCB_READONLY);
        wxCB_READONLY);
(-) rapidsvn-0.6.0/src/exceptions.hpp (-1 / +1 lines)
 Lines 23-29    Link Here 
  long code;
  long code;
public:
public:
   RapidSvnEx (const wxString & __estr = "", const long __code = -1);
   RapidSvnEx (const wxString & __estr = _(""), const long __code = -1);
   virtual ~ RapidSvnEx ();
   virtual ~ RapidSvnEx ();
(-) rapidsvn-0.6.0/src/external_program_action.cpp (-3 / +3 lines)
 Lines 48-54    Link Here 
    path = GetPathAsTempFile(path);
    path = GetPathAsTempFile(path);
  }
  }
  
  
  wxString target_str = path.c_str ();
  wxString target_str (path.c_str (), wxConvLocal);
  wxFileName target = target_str;
  wxFileName target = target_str;
  // The target we'll pass to the external program
  // The target we'll pass to the external program
 Lines 82-88    Link Here 
    }
    }
    else
    else
    {
    {
      wxString argv = prefs.explorer + " \"" + target_document + "\"";
      wxString argv = prefs.explorer + _(" \"") + target_document + _("\"");
    
    
      wxExecute (argv);
      wxExecute (argv);
    }
    }
 Lines 96-102    Link Here 
    }
    }
    else
    else
    {
    {
      wxString argv = prefs.editor + " \"" + target_document + "\"";
      wxString argv = prefs.editor + _(" \"") + target_document + _("\"");
      
      
      wxExecute (argv);
      wxExecute (argv);
    }
    }
(-) rapidsvn-0.6.0/src/file_info.cpp (-7 / +14 lines)
 Lines 37-43    Link Here 
  /* if this returns an error, just don't print anything out */
  /* if this returns an error, just don't print anything out */
  apr_err = apr_time_exp_tz (&extime, atime, 0);
  apr_err = apr_time_exp_tz (&extime, atime, 0);
  if (!apr_err)
  if (!apr_err)
    str.Printf ("%s: %04lu-%02lu-%02lu %02lu:%02lu GMT", desc,
    str.Printf (_("%s: %04lu-%02lu-%02lu %02lu:%02lu GMT"), desc,
                (unsigned long) (extime.tm_year + 1900),
                (unsigned long) (extime.tm_year + 1900),
                (unsigned long) (extime.tm_mon + 1),
                (unsigned long) (extime.tm_mon + 1),
                (unsigned long) (extime.tm_mday),
                (unsigned long) (extime.tm_mday),
 Lines 60-67    Link Here 
  void 
  void 
  addLine (const char * line)
  addLine (const char * line)
  {
  {
    info += wxString(line, wxConvLocal);
    info += _("\n");
  }
  void 
  addLine (const wxChar * line)
  {
    info += line;
    info += line;
    info += "\n";
    info += _("\n");
  }
  }
  void
  void
 Lines 159-171    Link Here 
      str.Printf (_("Last Changed Rev: %ld"), entry.cmtRev ());
      str.Printf (_("Last Changed Rev: %ld"), entry.cmtRev ());
      addLine (str);
      addLine (str);
      info_print_time (entry.cmtDate (), _("Last Changed Date"), str);
      info_print_time (entry.cmtDate (), "Last Changed Date", str);
      addLine (str);
      addLine (str);
      info_print_time (entry.textTime (), _("Text Last Updated"), str);
      info_print_time (entry.textTime (), "Text Last Updated", str);
      addLine (str);
      addLine (str);
      info_print_time (entry.propTime (), _("Properties Last Updated"), str);
      info_print_time (entry.propTime (), "Properties Last Updated", str);
      addLine (str);
      addLine (str);
      str.Printf (_("Checksum: %s"), entry.checksum ());
      str.Printf (_("Checksum: %s"), entry.checksum ());
 Lines 220-226    Link Here 
const char *
const char *
FileInfo::info () const
FileInfo::info () const
{
{
  m->info = "";
  m->info = _("");
  svn::Client client (m->context);
  svn::Client client (m->context);
  std::vector<svn::Path>::const_iterator it;
  std::vector<svn::Path>::const_iterator it;
 Lines 234-240    Link Here 
    m->addLine ("");
    m->addLine ("");
  }
  }
  return m->info;
  return m->info.ToAscii();
}
}
/* -----------------------------------------------------------------
/* -----------------------------------------------------------------
(-) rapidsvn-0.6.0/src/filelist_ctrl.cpp (-41 / +41 lines)
 Lines 91-102    Link Here 
 * Tags for wxConfig file settings, defined here to avoid duplicate
 * Tags for wxConfig file settings, defined here to avoid duplicate
 * hard coded strings.
 * hard coded strings.
 */
 */
static const char ConfigSortColumn[]       = "/FileListCtrl/SortColumn";
static const wxChar * ConfigSortColumn = _("/FileListCtrl/SortColumn");
static const char ConfigSortOrder[]        = "/FileListCtrl/SortOrder";
static const wxChar * ConfigSortOrder  = _("/FileListCtrl/SortOrder");
static const char ConfigColumnWidthFmt[]   = "/FileListCtrl/Column%sWidth";
static const wxChar * ConfigColumnWidthFmt   = _("/FileListCtrl/Column%sWidth");
static const char ConfigColumnVisibleFmt[] = "/FileListCtrl/Column%sVisible";
static const wxChar * ConfigColumnVisibleFmt = _("/FileListCtrl/Column%sVisible");
static const char ConfigWithUpdate[]       = "/FileListCtrl/WithUpdate";
static const wxChar * ConfigWithUpdate       = _("/FileListCtrl/WithUpdate");
static const char ConfigFlatView[]         = "/FileListCtrl/FlatView";
static const wxChar * ConfigFlatView         = _("/FileListCtrl/FlatView");
/**
/**
 * test if the given status entry is a file or
 * test if the given status entry is a file or
 Lines 133-139    Link Here 
  }
  }
  
  
  // unversioned.
  // unversioned.
  return wxDirExists (status->path ());
  return wxDirExists (wxString(status->path (), wxConvLocal));
}
}
static const int
static const int
 Lines 242-249    Link Here 
static int
static int
ComparePaths (const char * p1, const char * p2)
ComparePaths (const char * p1, const char * p2)
{
{
  wxFileName fn1 (p1);
  wxFileName fn1 (wxString(p1, wxConvLocal));
  wxFileName fn2 (p2);
  wxFileName fn2 (wxString(p2, wxConvLocal));
  wxString path1 = fn1.GetPath ();
  wxString path1 = fn1.GetPath ();
  wxString path2 = fn2.GetPath ();
  wxString path2 = fn2.GetPath ();
 Lines 251-263    Link Here 
  int res = 0;
  int res = 0;
  // Is p2 a subdir or entry of p1?
  // Is p2 a subdir or entry of p1?
  if (path1.CmpNoCase (p2) == 0)
  if (path1.CmpNoCase (fn2.GetFullPath()) == 0)
  {
  {
    return -1;
    return -1;
  }
  }
  // Is p1 a subdir or entry of p2?
  // Is p1 a subdir or entry of p2?
  if (path2.CmpNoCase (p1) == 0)
  if (path2.CmpNoCase (fn1.GetFullPath()) == 0)
  {
  {
    return 1;
    return 1;
  }
  }
 Lines 309-315    Link Here 
  const char * sv1 = s1 == 0 ? "" : s1;
  const char * sv1 = s1 == 0 ? "" : s1;
  const char * sv2 = s2 == 0 ? "" : s2;
  const char * sv2 = s2 == 0 ? "" : s2;
  
  
  return wxString (sv1).CmpNoCase (sv2);
  return wxString (sv1, wxConvLocal).CmpNoCase (wxString(sv2, wxConvLocal));
}
}
/**
/**
 Lines 494-500    Link Here 
/**
/**
 * array with column captions
 * array with column captions
 */
 */
static const char * 
static const wxChar * 
COLUMN_CAPTIONS[FileListCtrl::COL_COUNT] =
COLUMN_CAPTIONS[FileListCtrl::COL_COUNT] =
{
{
  _("Name"),
  _("Name"),
 Lines 576-582    Link Here 
  Data ()
  Data ()
    : SortIncreasing (true), SortColumn (COL_NAME), 
    : SortIncreasing (true), SortColumn (COL_NAME), 
      DirtyColumns (true), FlatMode (false), Context (0),
      DirtyColumns (true), FlatMode (false), Context (0),
      Path (""), WithUpdate (false)
      Path (_("")), WithUpdate (false)
  {
  {
    ImageListSmall = new wxImageList (16, 16, TRUE);
    ImageListSmall = new wxImageList (16, 16, TRUE);
 Lines 809-819    Link Here 
  // Hide the list to speed up inserting
  // Hide the list to speed up inserting
  Hide ();
  Hide ();
  std::string stdpath (path.c_str ());
  std::string stdpath (path.ToAscii());
  svn::Client client (m->Context);
  svn::Client client (m->Context);
  const svn::StatusEntries statusVector =
  const svn::StatusEntries statusVector =
    client.status (path.c_str (), m->FlatMode, true, m->WithUpdate);
    client.status (path.ToAscii (), m->FlatMode, true, m->WithUpdate);
  svn::StatusEntries::const_iterator it;
  svn::StatusEntries::const_iterator it;
  const size_t pathLength = path.Length () + 1;
  const size_t pathLength = path.Length () + 1;
 Lines 825-835    Link Here 
    int i = GetItemCount ();
    int i = GetItemCount ();
    // truncate the first part of the path
    // truncate the first part of the path
    wxString fullPath (status.path ());
    wxString fullPath (status.path (), wxConvLocal);
    wxString filename (fullPath.Mid (pathLength));
    wxString filename (fullPath.Mid (pathLength));
    if (filename.Length () == 0)
    if (filename.Length () == 0)
    {
    {
      values[COL_NAME] = ".";
      values[COL_NAME] = _(".");
    }
    }
    else
    else
    {
    {
 Lines 882-892    Link Here 
    {
    {
      // unversioned entries dont carry dir info
      // unversioned entries dont carry dir info
      // with them. must find this out by ourself
      // with them. must find this out by ourself
      if (wxDirExists (status.path ()))
      if (wxDirExists(wxString(status.path (), wxConvLocal) ) )
      {
      {
        imageIndex = GetImageIndex (IMG_INDX_FOLDER, -1);
        imageIndex = GetImageIndex (IMG_INDX_FOLDER, -1);
      }
      }
      else if (wxFileExists (status.path ()))
      else if (wxFileExists(wxString(status.path (), wxConvLocal) ))
      {
      {
        imageIndex = GetImageIndex (svn_wc_status_unversioned, -1);
        imageIndex = GetImageIndex (svn_wc_status_unversioned, -1);
      }
      }
 Lines 903-926    Link Here 
    SetItemData (i, (long)new svn::Status (status));    // The control now owns this data
    SetItemData (i, (long)new svn::Status (status));    // The control now owns this data
    // and must delete it in due course.
    // and must delete it in due course.
    text = "";
    text = _("");
    if (status.isVersioned ())
    if (status.isVersioned ())
    {
    {
      const svn::Entry & entry = status.entry ();
      const svn::Entry & entry = status.entry ();
      values[COL_REV].Printf ("%ld", entry.revision ());
      values[COL_REV].Printf (_("%ld"), entry.revision ());
      values[COL_CMT_REV].Printf ("%ld", entry.cmtRev ());
      values[COL_CMT_REV].Printf (_("%ld"), entry.cmtRev ());
      values[COL_AUTHOR] = entry.cmtAuthor ();
      values[COL_AUTHOR] = wxString(entry.cmtAuthor (), wxConvLocal);
      // date formatting
      // date formatting
      values[COL_CMT_DATE] = FormatDateTime (entry.cmtDate ());
      values[COL_CMT_DATE] = wxString(FormatDateTime (entry.cmtDate ()), wxConvLocal);
      values[COL_TEXT_TIME] = FormatDateTime (entry.textTime ());
      values[COL_TEXT_TIME] = wxString(FormatDateTime (entry.textTime ()), wxConvLocal);
      values[COL_PROP_TIME] = FormatDateTime (entry.propTime ());
      values[COL_PROP_TIME] = wxString(FormatDateTime (entry.propTime ()), wxConvLocal);
      values[COL_URL] = entry.url ();
      values[COL_URL] = wxString(entry.url (), wxConvLocal);
      values[COL_REPOS] = entry.repos ();
      values[COL_REPOS] = wxString(entry.repos (), wxConvLocal);
      values[COL_UUID] = entry.uuid ();
      values[COL_UUID] = wxString(entry.uuid (), wxConvLocal);
      
      
      wxString schedule;
      wxString schedule;
      switch (entry.schedule ())
      switch (entry.schedule ())
 Lines 935-956    Link Here 
        schedule = _("replace");
        schedule = _("replace");
        break;
        break;
      case svn_wc_schedule_normal:
      case svn_wc_schedule_normal:
        schedule = "";
        schedule = _("");
        break;
        break;
      }
      }
      values[COL_SCHEDULE] = schedule;
      values[COL_SCHEDULE] = schedule;
      if (entry.isCopied ())
      if (entry.isCopied ())
      {
      {
        values[COL_COPIED].Printf ("%s, %ld", 
        values[COL_COPIED].Printf (_("%s, %ld"), 
                                  entry.copyfromUrl (),
                                  entry.copyfromUrl (),
                                  entry.copyfromRev ());
                                  entry.copyfromRev ());
      }
      }
      values[COL_CONFLICT_OLD] = entry.conflictOld ();
      values[COL_CONFLICT_OLD] = wxString(entry.conflictOld (), wxConvLocal);
      values[COL_CONFLICT_NEW] = entry.conflictNew ();
      values[COL_CONFLICT_NEW] = wxString(entry.conflictNew (), wxConvLocal);
      values[COL_CONFLICT_WRK] = entry.conflictWrk ();
      values[COL_CONFLICT_WRK] = wxString(entry.conflictWrk (), wxConvLocal);
      values[COL_CHECKSUM] = entry.checksum ();
      values[COL_CHECKSUM] = wxString(entry.checksum (), wxConvLocal);
    }
    }
    switch (status.textStatus ())
    switch (status.textStatus ())
    {
    {
 Lines 1085-1091    Link Here 
    try
    try
    {
    {
      if(status != 0)
      if(status != 0)
      verbList.InitFromDocument (status->path ());
      verbList.InitFromDocument (wxString(status->path (), wxConvLocal));
    }
    }
    catch (std::exception)
    catch (std::exception)
    {
    {
 Lines 1101-1107    Link Here 
      wxMenuItem *pItem;
      wxMenuItem *pItem;
      // TODO: Convert verb names to unicode on the fly if needed (or make
      // TODO: Convert verb names to unicode on the fly if needed (or make
      // verblist follow wxWindows' unicode setting)
      // verblist follow wxWindows' unicode setting)
      pItem = new wxMenuItem (&menu, ID_Verb_Min + i, verbList.GetName (i));
      pItem = new wxMenuItem (&menu, ID_Verb_Min + i, wxString(verbList.GetName (i), wxConvLocal));
      //pItem->SetBitmap (wxBITMAP (?))
      //pItem->SetBitmap (wxBITMAP (?))
      menu.Append (pItem);
      menu.Append (pItem);
    }
    }
 Lines 1112-1118    Link Here 
      Preferences prefs;
      Preferences prefs;
      if (!prefs.editor.IsEmpty () || IsDir (status))
      if (!prefs.editor.IsEmpty () || IsDir (status))
      {
      {
        const char * defaultActionVerb = _("Open");
        const wxChar * defaultActionVerb = _("Open");
        if (!IsDir (status))
        if (!IsDir (status))
        {
        {
          if (svn::Url::isValid (status->path ()))
          if (svn::Url::isValid (status->path ()))
 Lines 1395-1401    Link Here 
    
    
  while (GetColumnCount () < count)
  while (GetColumnCount () < count)
  {
  {
    InsertColumn (0, "");
    InsertColumn (0, _(""));
  }
  }
  // Now set the captions and widths
  // Now set the captions and widths
(-) rapidsvn-0.6.0/src/folder_browser.cpp (-19 / +19 lines)
 Lines 94-100    Link Here 
  if (path.length() <= MAXLENGTH_BOOKMARK)
  if (path.length() <= MAXLENGTH_BOOKMARK)
    return path;
    return path;
  size_t pos = path.Find (":");
  size_t pos = path.Find (_(":"));
  wxString newPath;
  wxString newPath;
  pos++;
  pos++;
 Lines 117-123    Link Here 
      break;
      break;
  }
  }
  newPath += "...";
  newPath += _("...");
  const int restPos = path.Length () - MAXLENGTH_BOOKMARK + 
  const int restPos = path.Length () - MAXLENGTH_BOOKMARK + 
    newPath.Length ();
    newPath.Length ();
 Lines 131-137    Link Here 
static bool
static bool
IsValidSeparator (const wxString & sep)
IsValidSeparator (const wxString & sep)
{
{
  return ((sep == "/") || (sep == "\\"));
  return ((sep == _("/")) || (sep == _("\\")));
}
}
 Lines 181-187    Link Here 
  
  
    if(!id.IsOk())
    if(!id.IsOk())
    {
    {
      return "";
      return _("");
    }
    }
    FolderItemData* data = GetItemData (id);
    FolderItemData* data = GetItemData (id);
 Lines 227-233    Link Here 
        break;
        break;
      case FOLDER_TYPE_BOOKMARK:
      case FOLDER_TYPE_BOOKMARK:
        context = bookmarks.GetContext (data->getPath ());
        context = bookmarks.GetContext(data->getPath().ToAscii());
        ok = context != 0;
        ok = context != 0;
        break;
        break;
 Lines 274-280    Link Here 
      if (context != 0)
      if (context != 0)
      {
      {
        username = context->getUsername ();
        username = wxString(context->getUsername (), wxConvLocal);
      }
      }
      if (username.length () == 0)
      if (username.length () == 0)
 Lines 325-331    Link Here 
  
  
    while (ok)
    while (ok)
    {
    {
      if (filename != svn::Wc::ADM_DIR_NAME)
      if (filename != wxString(svn::Wc::ADM_DIR_NAME, wxConvLocal))
        return true;
        return true;
      ok = dir.GetNext (&filename);
      ok = dir.GetNext (&filename);
    }
    }
 Lines 385-391    Link Here 
        for(index = 0; index < count; index++)
        for(index = 0; index < count; index++)
        {
        {
          const wxString path (bookmarks.GetBookmark (index));
          const wxString path (bookmarks.GetBookmark (index), wxConvLocal);
          FolderItemData* data= new FolderItemData (FOLDER_TYPE_BOOKMARK, 
          FolderItemData* data= new FolderItemData (FOLDER_TYPE_BOOKMARK, 
                                                    path, path, TRUE);
                                                    path, path, TRUE);
          wxString label (TruncatePath (path));
          wxString label (TruncatePath (path));
 Lines 406-412    Link Here 
      {
      {
        const wxString& parentPath = parentData->getPath ();
        const wxString& parentPath = parentData->getPath ();
        if ( svn::Url::isValid (parentPath) )
        if ( svn::Url::isValid (parentPath.ToAscii()) )
          RefreshRepository (parentPath, parentId);
          RefreshRepository (parentPath, parentId);
        else
        else
          RefreshLocal (parentPath, parentId);
          RefreshLocal (parentPath, parentId);
 Lines 455-467    Link Here 
    while(ok)
    while(ok)
    {
    {
      if(filename != svn::Wc::ADM_DIR_NAME)
      if(filename != wxString(svn::Wc::ADM_DIR_NAME, wxConvLocal))
      {
      {
        parentHasSubdirectories = true;
        parentHasSubdirectories = true;
  
  
        wxFileName path(parentPath, filename, wxPATH_NATIVE);
        wxFileName path(parentPath, filename, wxPATH_NATIVE);
        wxString fullPath = path.GetFullPath ();
        wxString fullPath = path.GetFullPath ();
        const char * fullPath_c = fullPath.c_str ();
        const char * fullPath_c = fullPath.ToAscii ();
        int image = FOLDER_IMAGE_FOLDER;
        int image = FOLDER_IMAGE_FOLDER;
        int open_image = FOLDER_IMAGE_OPEN_FOLDER;
        int open_image = FOLDER_IMAGE_OPEN_FOLDER;
 Lines 511-517    Link Here 
    svn::Client client (GetContext ());
    svn::Client client (GetContext ());
    svn::Revision rev (svn::Revision::HEAD);
    svn::Revision rev (svn::Revision::HEAD);
    svn::DirEntries entries = 
    svn::DirEntries entries = 
      client.ls (parentPath, rev, false);
      client.ls (parentPath.ToAscii(), rev, false);
    svn::DirEntries::const_iterator it;
    svn::DirEntries::const_iterator it;
    //bool parentHasSubdirectories = false;
    //bool parentHasSubdirectories = false;
 Lines 521-527    Link Here 
      int image = FOLDER_IMAGE_FOLDER;
      int image = FOLDER_IMAGE_FOLDER;
      int open_image = FOLDER_IMAGE_OPEN_FOLDER;
      int open_image = FOLDER_IMAGE_OPEN_FOLDER;
      wxString fullPath = entry.name ();
      wxString fullPath (entry.name (), wxConvLocal);
      wxString filename (fullPath.Mid (parentPath.Length () + 1));
      wxString filename (fullPath.Mid (parentPath.Length () + 1));
      //parentHasSubdirectories = true;
      //parentHasSubdirectories = true;
      
      
 Lines 693-699    Link Here 
        break;
        break;
      // bookmark match?
      // bookmark match?
      if (data->getPath () == bookmarkPath)
      if (data->getPath () == wxString(bookmarkPath, wxConvLocal) )
      {
      {
        // select bookmark
        // select bookmark
        success = true;
        success = true;
 Lines 749-755    Link Here 
  {
  {
    wxTreeItemId id = GetSelectedBookmarkId ();
    wxTreeItemId id = GetSelectedBookmarkId ();
    wxString path ("");
    wxString path (_(""));
    if (id.IsOk ())
    if (id.IsOk ())
    {
    {
 Lines 799-812    Link Here 
  if (bookmarkPath.Length () == 0)
  if (bookmarkPath.Length () == 0)
    return;
    return;
  if(!m->SelectBookmark (bookmarkPath))
  if(!m->SelectBookmark (bookmarkPath.ToAscii()))
    return;
    return;
  wxTreeItemId bookmarkId = m->treeCtrl->GetSelection ();
  wxTreeItemId bookmarkId = m->treeCtrl->GetSelection ();
  if (m->treeCtrl->ItemHasChildren (bookmarkId))
  if (m->treeCtrl->ItemHasChildren (bookmarkId))
    m->treeCtrl->Expand (bookmarkId);
    m->treeCtrl->Expand (bookmarkId);
  SelectFolder (path);
  SelectFolder (path.ToAscii());
}
}
const bool
const bool
 Lines 824-830    Link Here 
    {
    {
      wxString path = data->getPath ();
      wxString path = data->getPath ();
      m->Delete (id);
      m->Delete (id);
      m->bookmarks.RemoveBookmark (path.c_str ());
      m->bookmarks.RemoveBookmark (path.ToAscii ());
      success = TRUE;
      success = TRUE;
    }
    }
  }
  }
 Lines 890-896    Link Here 
bool
bool
FolderBrowser::SelectFolder (const char * path)
FolderBrowser::SelectFolder (const char * path)
{
{
  return m->SelectFolder (path);
  return m->SelectFolder (wxString(path, wxConvLocal));
}
}
const size_t
const size_t
(-) rapidsvn-0.6.0/src/folder_browser.hpp (-1 / +1 lines)
 Lines 31-37    Link Here 
  FolderBrowser (wxWindow * parent,  const wxWindowID id = -1,
  FolderBrowser (wxWindow * parent,  const wxWindowID id = -1,
                 const wxPoint & pos = wxDefaultPosition,
                 const wxPoint & pos = wxDefaultPosition,
                 const wxSize & size = wxDefaultSize,
                 const wxSize & size = wxDefaultSize,
                 const wxString & name = "FolderBrowser");
                 const wxString & name = _("FolderBrowser"));
  virtual ~ FolderBrowser ();
  virtual ~ FolderBrowser ();
(-) rapidsvn-0.6.0/src/get_action.cpp (-3 / +3 lines)
 Lines 40-48    Link Here 
{
{
  svn::Client client (GetContext ());
  svn::Client client (GetContext ());
  wxSetWorkingDirectory (GetPath ().c_str ());
  wxSetWorkingDirectory (wxString(GetPath ().c_str (), wxConvLocal));
  client.update (m_data.path.c_str (),
  client.update (static_cast<const char *>(m_data.path.ToAscii()),
                 m_data.revision,
		 m_data.revision,
                 false);
                 false);
  return true;
  return true;
(-) rapidsvn-0.6.0/src/import_action.cpp (-2 / +3 lines)
 Lines 50-57    Link Here 
ImportAction::Perform ()
ImportAction::Perform ()
{
{
  svn::Client client (GetContext ());
  svn::Client client (GetContext ());
  client.import (m_data.Path.c_str (), m_data.Repository.c_str (),
  client.import (static_cast<const char *>(m_data.Path.ToAscii()), 
                 m_data.LogMessage.c_str(), m_data.Recursive);
		 m_data.Repository.ToAscii (), m_data.LogMessage.ToAscii(), 
		 m_data.Recursive);
  return true;
  return true;
}
}
(-) rapidsvn-0.6.0/src/import_dlg.cpp (-5 / +5 lines)
 Lines 50-71    Link Here 
    // Row 0:  
    // Row 0:  
    Grid->Add(new wxStaticText(wnd, -1, _("Repository URL")), 0, 
    Grid->Add(new wxStaticText(wnd, -1, _("Repository URL")), 0, 
              wxLEFT | wxALIGN_CENTER_VERTICAL, 5);
              wxLEFT | wxALIGN_CENTER_VERTICAL, 5);
    wxTextCtrl *Repository = new wxTextCtrl(wnd, -1, "",
    wxTextCtrl *Repository = new wxTextCtrl(wnd, -1, _(""),
                                            wxDefaultPosition, wxSize(300, -1), 0,
                                            wxDefaultPosition, wxSize(300, -1), 0,
                                            wxTextValidator(wxFILTER_NONE, &data.Repository));
                                            wxTextValidator(wxFILTER_NONE, &data.Repository));
    Grid->Add(Repository, 1, wxLEFT | wxEXPAND | wxALIGN_CENTER_VERTICAL, 5);
    Grid->Add(Repository, 1, wxLEFT | wxEXPAND | wxALIGN_CENTER_VERTICAL, 5);
    Grid->Add(new wxStaticText(wnd, -1, ""), 0, 
    Grid->Add(new wxStaticText(wnd, -1, _("")), 0, 
              0, 5);
              0, 5);
    // Row 1:  
    // Row 1:  
    Grid->Add(new wxStaticText(wnd, -1, _("Path")), 0, 
    Grid->Add(new wxStaticText(wnd, -1, _("Path")), 0, 
              wxLEFT | wxALIGN_CENTER_VERTICAL, 5);
              wxLEFT | wxALIGN_CENTER_VERTICAL, 5);
    wxTextCtrl *Path = new wxTextCtrl(wnd, -1, "",
    wxTextCtrl *Path = new wxTextCtrl(wnd, -1, _(""),
                                      wxDefaultPosition, wxSize(300, -1), 0,
                                      wxDefaultPosition, wxSize(300, -1), 0,
                                      wxTextValidator(wxFILTER_NONE, &data.Path));
                                      wxTextValidator(wxFILTER_NONE, &data.Path));
    Grid->Add(Path, 1, wxLEFT | wxEXPAND, 5);
    Grid->Add(Path, 1, wxLEFT | wxEXPAND, 5);
    wxButton* BrowseButton = new wxButton(wnd, ID_BUTTON_BROWSE, "...", 
    wxButton* BrowseButton = new wxButton(wnd, ID_BUTTON_BROWSE, _("..."), 
                                          wxPoint(-1,-1), wxSize(20, -1));
                                          wxPoint(-1,-1), wxSize(20, -1));
    Grid->Add(BrowseButton, 0, wxLEFT | wxALIGN_CENTER_VERTICAL, 5);
    Grid->Add(BrowseButton, 0, wxLEFT | wxALIGN_CENTER_VERTICAL, 5);
  
  
 Lines 76-82    Link Here 
    wxStaticBoxSizer *messageSizer = new wxStaticBoxSizer(
    wxStaticBoxSizer *messageSizer = new wxStaticBoxSizer(
      new wxStaticBox(wnd, -1, _("Enter log message")), wxHORIZONTAL);
      new wxStaticBox(wnd, -1, _("Enter log message")), wxHORIZONTAL);
    
    
    wxTextCtrl* Log = new wxTextCtrl(wnd, -1, "", wxDefaultPosition, 
    wxTextCtrl* Log = new wxTextCtrl(wnd, -1, _(""), wxDefaultPosition, 
                                     wxSize(-1, 50), wxTE_MULTILINE,
                                     wxSize(-1, 50), wxTE_MULTILINE,
                                     wxTextValidator(wxFILTER_NONE, &data.LogMessage));
                                     wxTextValidator(wxFILTER_NONE, &data.LogMessage));
    
    
(-) rapidsvn-0.6.0/src/listed_dlg.cpp (-9 / +9 lines)
 Lines 40-49    Link Here 
  EDIT_EDIT
  EDIT_EDIT
};
};
static const char * LABEL_EDIT=_("&Edit...");
static const wxChar * LABEL_EDIT=_("&Edit...");
static const char * LABEL_VIEW=_("&View...");
static const wxChar * LABEL_VIEW=_("&View...");
static const char * LABEL_NEW=_("&New...");
static const wxChar * LABEL_NEW=_("&New...");
static const char * LABEL_DELETE=_("&Delete...");
static const wxChar * LABEL_DELETE=_("&Delete...");
class ListCtrl : public wxListView
class ListCtrl : public wxListView
{
{
 Lines 162-168    Link Here 
    wxTextCtrl * textName = new wxTextCtrl (this, ID_Name);
    wxTextCtrl * textName = new wxTextCtrl (this, ID_Name);
    wxTextCtrl * textValue = 
    wxTextCtrl * textValue = 
      new wxTextCtrl (this, ID_Value, "", wxDefaultPosition, 
      new wxTextCtrl (this, ID_Value, _(""), wxDefaultPosition, 
                      wxSize (300, 100), wxTE_MULTILINE);
                      wxSize (300, 100), wxTE_MULTILINE);
    wxFlexGridSizer * textSizer = new wxFlexGridSizer (2, 5, 5);
    wxFlexGridSizer * textSizer = new wxFlexGridSizer (2, 5, 5);
 Lines 196-203    Link Here 
    m_labelName = labelName;
    m_labelName = labelName;
    m_labelValue = labelValue;
    m_labelValue = labelValue;
    m_addTitle = "";
    m_addTitle = _("");
    m_editTitle = "";
    m_editTitle = _("");
    m_mode = EDIT_NEW;
    m_mode = EDIT_NEW;
  }
  }
 Lines 319-325    Link Here 
  {
  {
    // create controls
    // create controls
    wxStaticBoxSizer *boxSizer = new wxStaticBoxSizer (
    wxStaticBoxSizer *boxSizer = new wxStaticBoxSizer (
      box = new wxStaticBox (wnd, -1, ""), 
      box = new wxStaticBox (wnd, -1, _("")), 
      wxHORIZONTAL);
      wxHORIZONTAL);
    listCtrl = new ListCtrl (wnd);
    listCtrl = new ListCtrl (wnd);
 Lines 407-413    Link Here 
  void
  void
  Edit (int mode)
  Edit (int mode)
  {
  {
    wxString name (""), value (""), title ("");
    wxString name (_("")), value (_("")), title (_(""));
    if (mode != EDIT_EDIT)
    if (mode != EDIT_EDIT)
      title = addTitle;
      title = addTitle;
(-) rapidsvn-0.6.0/src/listener.cpp (-12 / +12 lines)
 Lines 21-27    Link Here 
#include "tracer.hpp"
#include "tracer.hpp"
#include "auth_dlg.hpp"
#include "auth_dlg.hpp"
static const char *
static const wxChar *
ACTION_NAMES [] =
ACTION_NAMES [] =
{
{
  _("Add"),           // svn_wc_notify_add,
  _("Add"),           // svn_wc_notify_add,
 Lines 178-189    Link Here 
  if (ok)
  if (ok)
  {
  {
    // WORKAROUND: CONVERT TO UTF8
    // WORKAROUND: CONVERT TO UTF8
    wxString usernameNative (dlg.GetUsername ());
    wxString usernameNative (dlg.GetUsername (), wxConvLocal);
    wxString passwordNative (dlg.GetPassword ());
    wxString passwordNative (dlg.GetPassword (), wxConvLocal);
    wxString usernameUtf8 (usernameNative.mb_str (wxConvUTF8));
    wxString usernameUtf8 (usernameNative.mb_str(wxConvUTF8), wxConvUTF8);
    wxString passwordUtf8 (passwordNative.mb_str (wxConvUTF8));
    wxString passwordUtf8 (passwordNative.mb_str(wxConvUTF8), wxConvUTF8);
    username = usernameUtf8.c_str ();
    username = (const char *)usernameUtf8.ToAscii ();
    password = passwordUtf8.c_str ();
    password = (const char *)passwordUtf8.ToAscii ();
  }
  }
  return ok;
  return ok;
 Lines 200-206    Link Here 
                         svn_revnum_t revision)
                         svn_revnum_t revision)
{
{
  // Map an action to string and trace the action and path
  // Map an action to string and trace the action and path
  const char * actionString = 0;
  const wxChar * actionString = 0;
  if (action >= 0 && action <= MAX_ACTION)
  if (action >= 0 && action <= MAX_ACTION)
    actionString = ACTION_NAMES [action];
    actionString = ACTION_NAMES [action];
 Lines 208-214    Link Here 
  if (actionString != 0)
  if (actionString != 0)
  {
  {
    wxString msg;
    wxString msg;
    msg.Printf ("%s: %s", actionString, path);
    msg.Printf (_("%s: %s"), actionString, path);
    Trace (msg);
    Trace (msg);
  }
  }
 Lines 245-259    Link Here 
Listener::contextSslClientCertPrompt (std::string & certFile)
Listener::contextSslClientCertPrompt (std::string & certFile)
{
{
  wxString filename = wxFileSelector (
  wxString filename = wxFileSelector (
    _("Select Certificate File"), "", "", "",
    _("Select Certificate File"), _(""), _(""), _(""),
    "*.*", wxOPEN | wxFILE_MUST_EXIST,
    _("*.*"), wxOPEN | wxFILE_MUST_EXIST,
    GetParent ());
    GetParent ());
  if (filename.empty ())
  if (filename.empty ())
    return false;
    return false;
  //TODO
  //TODO
  certFile = filename.c_str ();
  certFile = filename.ToAscii ();
  return true;
  return true;
}
}
(-) rapidsvn-0.6.0/src/log_dlg.cpp (-5 / +5 lines)
 Lines 149-161    Link Here 
      wxString rev;
      wxString rev;
      wxString dateStr (FormatDateTime (entry.date));
      wxString dateStr (FormatDateTime (entry.date));
      rev.Printf ("%ld", (long) entry.revision);
      rev.Printf (_("%ld"), (long) entry.revision);
      //TODO perform date formatting. but dont use
      //TODO perform date formatting. but dont use
      //subversion but wxDateTime
      //subversion but wxDateTime
      //wxString date (entry.date.c_str ());
      //wxString date (entry.date.c_str ());
      InsertItem (index, rev);
      InsertItem (index, rev);
      SetItem (index, 1, entry.author.c_str ());
      SetItem (index, 1, wxString(entry.author.c_str (), wxConvLocal));
      SetItem (index, 2, dateStr);
      SetItem (index, 2, dateStr);
      index++;
      index++;
    }
    }
 Lines 184-190    Link Here 
        wxWindow * wnd,
        wxWindow * wnd,
        const char * path_,
        const char * path_,
        const svn::LogEntries * entries_)
        const svn::LogEntries * entries_)
    : entries (entries_), path (path_), 
    : entries (entries_), path (path_, wxConvLocal), 
      parent (parent_), window (wnd)
      parent (parent_), window (wnd)
  {
  {
    // create controls
    // create controls
 Lines 194-200    Link Here 
    m_logList = new LogList (wnd, entries);
    m_logList = new LogList (wnd, entries);
    m_logMsg = new wxTextCtrl (wnd, LOG_MSG, "", 
    m_logMsg = new wxTextCtrl (wnd, LOG_MSG, _(""), 
                               wxDefaultPosition, wxSize (420, 110), 
                               wxDefaultPosition, wxSize (420, 110), 
                               wxTE_READONLY | wxTE_MULTILINE );
                               wxTE_READONLY | wxTE_MULTILINE );
 Lines 288-294    Link Here 
  {
  {
    wxString message;
    wxString message;
    const svn::LogEntry & entry = (*entries)[index];
    const svn::LogEntry & entry = (*entries)[index];
    message = entry.message.c_str ();
    message = wxString(entry.message.c_str (), wxConvLocal);
    message.Trim (false);
    message.Trim (false);
    m_logMsg->Show (false);
    m_logMsg->Show (false);
(-) rapidsvn-0.6.0/src/merge_action.cpp (-4 / +4 lines)
 Lines 51-57    Link Here 
  // Set current working directory to point to the path
  // Set current working directory to point to the path
  // in the folder browser (the path where the merge will be 
  // in the folder browser (the path where the merge will be 
  // performed)
  // performed)
  wxString path (GetPath ().c_str ());
  wxString path (GetPath ().c_str (), wxConvLocal);
  if (!wxSetWorkingDirectory (path))
  if (!wxSetWorkingDirectory (path))
  {
  {
    wxString msg;
    wxString msg;
 Lines 66-76    Link Here 
  //TODO check this
  //TODO check this
  long rev1 = 0;//MergeAction::getRevision (m_data.Path1Rev);
  long rev1 = 0;//MergeAction::getRevision (m_data.Path1Rev);
  long rev2 = 0;//MergeAction::getRevision (m_data.Path2Rev);
  long rev2 = 0;//MergeAction::getRevision (m_data.Path2Rev);
  client.merge (m_data.Path1.c_str (), 
  client.merge (static_cast<const char *>(m_data.Path1.ToAscii ()), 
                rev1, 
                rev1, 
                m_data.Path2.c_str (), 
                static_cast<const char *>(m_data.Path2.ToAscii ()), 
                rev2, 
                rev2, 
                path.c_str (), 
                static_cast<const char *>(path.ToAscii ()), 
                m_data.Force, 
                m_data.Force, 
                m_data.Recursive);
                m_data.Recursive);
  return true;
  return true;
(-) rapidsvn-0.6.0/src/merge_dlg.cpp (-7 / +7 lines)
 Lines 130-141    Link Here 
    wxLEFT | wxALIGN_CENTER_VERTICAL, 20);
    wxLEFT | wxALIGN_CENTER_VERTICAL, 20);
    
    
  // Row 1:  
  // Row 1:  
  wxTextCtrl *Path1 = new wxTextCtrl(this, -1, "",
  wxTextCtrl *Path1 = new wxTextCtrl(this, -1, _(""),
    wxDefaultPosition, wxSize(300, -1), 0,
    wxDefaultPosition, wxSize(300, -1), 0,
    wxTextValidator(wxFILTER_NONE, &m_data.Path1));
    wxTextValidator(wxFILTER_NONE, &m_data.Path1));
  grid->Add(Path1, 1, wxBOTTOM | wxEXPAND, 10);
  grid->Add(Path1, 1, wxBOTTOM | wxEXPAND, 10);
  
  
  wxTextCtrl *Path1Rev = new wxTextCtrl(this, -1, "",
  wxTextCtrl *Path1Rev = new wxTextCtrl(this, -1, _(""),
    wxDefaultPosition, wxDefaultSize, 0,
    wxDefaultPosition, wxDefaultSize, 0,
    wxTextValidator(wxFILTER_NUMERIC, &m_data.Path1Rev));
    wxTextValidator(wxFILTER_NUMERIC, &m_data.Path1Rev));
  grid->Add(Path1Rev, 0, wxLEFT, 20);
  grid->Add(Path1Rev, 0, wxLEFT, 20);
 Lines 147-158    Link Here 
    wxLEFT | wxALIGN_CENTER_VERTICAL, 20);
    wxLEFT | wxALIGN_CENTER_VERTICAL, 20);
  // Row 3:  
  // Row 3:  
  wxTextCtrl *Path2 = new wxTextCtrl(this, -1, "",
  wxTextCtrl *Path2 = new wxTextCtrl(this, -1, _(""),
    wxDefaultPosition, wxDefaultSize, 0,
    wxDefaultPosition, wxDefaultSize, 0,
    wxTextValidator(wxFILTER_NONE, &m_data.Path2));
    wxTextValidator(wxFILTER_NONE, &m_data.Path2));
  grid->Add(Path2, 1, wxBOTTOM | wxEXPAND, 10);
  grid->Add(Path2, 1, wxBOTTOM | wxEXPAND, 10);
  wxTextCtrl *Path2Rev = new wxTextCtrl(this, -1, "",
  wxTextCtrl *Path2Rev = new wxTextCtrl(this, -1, _(""),
    wxDefaultPosition, wxDefaultSize, 0,
    wxDefaultPosition, wxDefaultSize, 0,
    wxTextValidator(wxFILTER_NUMERIC, &m_data.Path2Rev));
    wxTextValidator(wxFILTER_NUMERIC, &m_data.Path2Rev));
  grid->Add(Path2Rev, 0, wxLEFT, 20);
  grid->Add(Path2Rev, 0, wxLEFT, 20);
 Lines 160-175    Link Here 
  // Row 4:
  // Row 4:
  grid->Add(new wxStaticText(this, -1, _("Destination path")), 0, 
  grid->Add(new wxStaticText(this, -1, _("Destination path")), 0, 
    0, 5);
    0, 5);
  grid->Add(new wxStaticText(this, -1, ""), 0, 
  grid->Add(new wxStaticText(this, -1, _("")), 0, 
    wxLEFT | wxALIGN_CENTER_VERTICAL, 20);
    wxLEFT | wxALIGN_CENTER_VERTICAL, 20);
  // Row 5:
  // Row 5:
  wxTextCtrl *Destination = new wxTextCtrl(this, -1, "",
  wxTextCtrl *Destination = new wxTextCtrl(this, -1, _(""),
    wxDefaultPosition, wxDefaultSize, 0,
    wxDefaultPosition, wxDefaultSize, 0,
    wxTextValidator(wxFILTER_NONE, &m_data.Destination));
    wxTextValidator(wxFILTER_NONE, &m_data.Destination));
  grid->Add(Destination, 1, wxBOTTOM | wxEXPAND, 5);
  grid->Add(Destination, 1, wxBOTTOM | wxEXPAND, 5);
  
  
  wxButton* BrowseButton = new wxButton(this, ID_BUTTON_BROWSE, "...", 
  wxButton* BrowseButton = new wxButton(this, ID_BUTTON_BROWSE, _("..."), 
    wxPoint(-1,-1), wxSize(20, -1));
    wxPoint(-1,-1), wxSize(20, -1));
  grid->Add(BrowseButton, 0, wxALL, 5);
  grid->Add(BrowseButton, 0, wxALL, 5);
(-) rapidsvn-0.6.0/src/mkdir_action.cpp (-6 / +6 lines)
 Lines 23-29    Link Here 
MkdirAction::MkdirAction (wxWindow * parent, const char * path)
MkdirAction::MkdirAction (wxWindow * parent, const char * path)
 : Action (parent, _("Mkdir"), GetBaseFlags ()),
 : Action (parent, _("Mkdir"), GetBaseFlags ()),
   m_path (path)
   m_path (path, wxConvLocal)
{
{
}
}
 Lines 35-49    Link Here 
    return false;
    return false;
  }
  }
  DestinationDlg dlg (GetParent (), _("Make directory"),
  DestinationDlg dlg (GetParent (), "Make directory",
                      _("Directory:"));
                      "Directory:");
  if (dlg.ShowModal () != wxID_OK)
  if (dlg.ShowModal () != wxID_OK)
  {
  {
    return false;
    return false;
  }
  }
  wxString target (dlg.GetDestination ()); 
  wxString target (dlg.GetDestination (), wxConvLocal); 
  m_target = target.Strip (wxString::both);
  m_target = target.Strip (wxString::both);
  return true;
  return true;
}
}
 Lines 56-63    Link Here 
  // add target to path
  // add target to path
  wxString newDir (m_path + m_target);
  wxString newDir (m_path + m_target);
  svn::Path target (m_path.c_str ());
  svn::Path target (m_path.ToAscii ());
  target.addComponent (m_target.c_str ());
  target.addComponent (m_target.ToAscii ());
  client.mkdir (target, "");
  client.mkdir (target, "");
  return true;
  return true;
(-) rapidsvn-0.6.0/src/move_action.cpp (-9 / +9 lines)
 Lines 23-42    Link Here 
MoveAction::MoveAction (wxWindow * parent, 
MoveAction::MoveAction (wxWindow * parent, 
                                int kind) 
                                int kind) 
 : Action (parent, "", GetBaseFlags ()),
 : Action (parent, _(""), GetBaseFlags ()),
   m_kind (kind)
   m_kind (kind)
{
{
  const char * name;
  const char * name;
  switch (kind)
  switch (kind)
  {
  {
  case MOVE_MOVE:
  case MOVE_MOVE:
    name = _("Move");
    name = "Move";
    break;
    break;
  case MOVE_COPY:
  case MOVE_COPY:
    name = _("Copy");
    name = "Copy";
    break;
    break;
  case MOVE_RENAME:
  case MOVE_RENAME:
    name = _("Rename");
    name = "Rename";
    break;
    break;
  default:
  default:
    name = "";
    name = "";
 Lines 74-83    Link Here 
  {
  {
  case MOVE_COPY:
  case MOVE_COPY:
  case MOVE_MOVE:
  case MOVE_MOVE:
    descr = _("Select destination:");
    descr = "Select destination:";
    break;
    break;
  case MOVE_RENAME:
  case MOVE_RENAME:
    descr = _("Enter new name:");
    descr = "Enter new name:";
    break;
    break;
  default:
  default:
    return false;
    return false;
 Lines 91-97    Link Here 
    return false;
    return false;
  }
  }
  m_destination = dlg.GetDestination ();
  m_destination = wxString(dlg.GetDestination (), wxConvLocal);
  m_force = dlg.GetForce ();
  m_force = dlg.GetForce ();
  return true;
  return true;
 Lines 103-109    Link Here 
  svn::Client client;
  svn::Client client;
  svn::Path srcPath = GetTarget ();
  svn::Path srcPath = GetTarget ();
  svn::Path destPath (m_destination.c_str ());
  svn::Path destPath (m_destination.ToAscii ());
  svn::Revision unusedRevision;
  svn::Revision unusedRevision;
  switch (m_kind)
  switch (m_kind)
 Lines 122-128    Link Here 
      std::string dirpath;
      std::string dirpath;
      srcPath.split (dirpath, basename);
      srcPath.split (dirpath, basename);
      destPath = dirpath.c_str ();
      destPath = dirpath.c_str ();
      destPath.addComponent (m_destination.c_str ());
      destPath.addComponent (m_destination.ToAscii ());
      client.move (srcPath, unusedRevision, destPath, m_force);
      client.move (srcPath, unusedRevision, destPath, m_force);
    }
    }
(-) rapidsvn-0.6.0/src/preferences.cpp (-18 / +18 lines)
 Lines 21-50    Link Here 
// platform dependant constants
// platform dependant constants
#ifdef _WIN32
#ifdef _WIN32
  static const char * DEFAULT_EXPLORER = "explorer.exe";
  static const wxChar * DEFAULT_EXPLORER = _("explorer.exe");
#else
#else
  static const char * DEFAULT_EXPLORER = "";
  static const wxChar * DEFAULT_EXPLORER = _("");
#endif
#endif
static const char * DEFAULT_EDITOR = "";
static const wxChar * DEFAULT_EDITOR = _("");
static const char * DEFAULT_DIFF_TOOL = "";
static const wxChar * DEFAULT_DIFF_TOOL = _("");
/**
/**
 * Configuration key names
 * Configuration key names
 */
 */
static const char CONF_EDITOR[] = 
static const wxChar * CONF_EDITOR = 
  "/Preferences/StandardEditor";
  _("/Preferences/StandardEditor");
static const char CONF_EDITOR_ALWAYS[] = 
static const wxChar * CONF_EDITOR_ALWAYS = 
  "/Preferences/AlwaysStandardEditor";
  _("/Preferences/AlwaysStandardEditor");
static const char CONF_EXPLORER[] = 
static const wxChar * CONF_EXPLORER = 
  "/Preferences/StandardFileExplorer";
  _("/Preferences/StandardFileExplorer");
static const char CONF_EXPLORER_ALWAYS[] = 
static const wxChar * CONF_EXPLORER_ALWAYS = 
  "/Preferences/AlwaysStandardFileExplorer";
  _("/Preferences/AlwaysStandardFileExplorer");
static const char CONF_PURGE_TEMP_FILES[] = 
static const wxChar * CONF_PURGE_TEMP_FILES = 
  "/Preferences/PurgeTempFiles";
  _("/Preferences/PurgeTempFiles");
static const char CONF_AUTH_PER_BOOKMARK[] =
static const wxChar * CONF_AUTH_PER_BOOKMARK =
  "/Preferences/AuthPerBookmark";
  _("/Preferences/AuthPerBookmark");
static const char CONF_DIFF_TOOL[] =
static const wxChar * CONF_DIFF_TOOL =
  "/Preferences/DiffTool";
  _("/Preferences/DiffTool");
Preferences::Preferences ()
Preferences::Preferences ()
  : editor (DEFAULT_EDITOR), editorAlways (false), 
  : editor (DEFAULT_EDITOR), editorAlways (false), 
(-) rapidsvn-0.6.0/src/preferences_dlg.cpp (-7 / +7 lines)
 Lines 35-47    Link Here 
// platform dependant constants
// platform dependant constants
#ifdef _WIN32
#ifdef _WIN32
static const char * EXECUTABLE_WILDCARD = 
static const wxChar * EXECUTABLE_WILDCARD = 
  _("Executable Files|*.exe;*.com;*.bat|All files (*.*)|*.*");
  _("Executable Files|*.exe;*.com;*.bat|All files (*.*)|*.*");
#else
#else
// NOTE: (WX 2.4.0) On Motif, neither multiple extensions nor multiple file
// NOTE: (WX 2.4.0) On Motif, neither multiple extensions nor multiple file
// types are supported (wildcard is limited to a single "*.ext" string)
// types are supported (wildcard is limited to a single "*.ext" string)
static const char * EXECUTABLE_WILDCARD = "";
static const wxChar * EXECUTABLE_WILDCARD = _("");
#endif
#endif
/* GeneralPanel **************************************************************/
/* GeneralPanel **************************************************************/
 Lines 169-175    Link Here 
      // text ctrl
      // text ctrl
      wxTextValidator valText (wxFILTER_NONE, 
      wxTextValidator valText (wxFILTER_NONE, 
                      & m_prefs->editor);
                      & m_prefs->editor);
      mTextEditor = new wxTextCtrl (this, -1, "", 
      mTextEditor = new wxTextCtrl (this, -1, _(""), 
                                      wxDefaultPosition, 
                                      wxDefaultPosition, 
                                      wxSize (200, -1), 
                                      wxSize (200, -1), 
                                      0, valText);
                                      0, valText);
 Lines 203-209    Link Here 
      // text ctrl
      // text ctrl
      wxTextValidator valText (wxFILTER_NONE, &m_prefs->explorer);
      wxTextValidator valText (wxFILTER_NONE, &m_prefs->explorer);
      mTextExplorer = 
      mTextExplorer = 
        new wxTextCtrl (this, -1, "", wxDefaultPosition, 
        new wxTextCtrl (this, -1, _(""), wxDefaultPosition, 
                        wxSize (200, -1), 
                        wxSize (200, -1), 
                        0, valText);
                        0, valText);
 Lines 240-246    Link Here 
      // text ctrl
      // text ctrl
      wxTextValidator valText (wxFILTER_NONE, &m_prefs->diffTool);
      wxTextValidator valText (wxFILTER_NONE, &m_prefs->diffTool);
      mTextDiffTool = 
      mTextDiffTool = 
        new wxTextCtrl (this, -1, "", wxDefaultPosition, 
        new wxTextCtrl (this, -1, _(""), wxDefaultPosition, 
                        wxSize (200, -1), 
                        wxSize (200, -1), 
                        0, valText);
                        0, valText);
 Lines 395-404    Link Here 
    wxBoxSizer *button_sizer = new wxBoxSizer (wxHORIZONTAL);
    wxBoxSizer *button_sizer = new wxBoxSizer (wxHORIZONTAL);
    button_sizer->Add (
    button_sizer->Add (
      new wxButton (wnd, wxID_OK, "OK"),
      new wxButton (wnd, wxID_OK, _("OK")),
      0, wxALL, 10);
      0, wxALL, 10);
    button_sizer->Add (
    button_sizer->Add (
      new wxButton (wnd, wxID_CANCEL, "Cancel"),
      new wxButton (wnd, wxID_CANCEL, _("Cancel")),
      0, wxALL, 10);
      0, wxALL, 10);
    notebook = new wxNotebook (wnd, -1, wxDefaultPosition, wxDefaultSize); 
    notebook = new wxNotebook (wnd, -1, wxDefaultPosition, wxDefaultSize); 
(-) rapidsvn-0.6.0/src/property_dlg.cpp (-3 / +4 lines)
 Lines 82-88    Link Here 
    {
    {
      const svn::PropertyEntry & entry = *it;
      const svn::PropertyEntry & entry = *it;
      const char * name = entry.name.c_str ();
      const char * name = entry.name.c_str ();
      bool found = FindEntry (name) != -1;
      bool found = FindEntry (wxString(name, wxConvLocal)) != -1;
      if (!found)
      if (!found)
      {
      {
 Lines 102-108    Link Here 
      GetEntryAtIndex (index, name, value);
      GetEntryAtIndex (index, name, value);
      m->property.set (name.c_str (), value.c_str ());
      m->property.set (name.ToAscii (), value.ToAscii ());
    }    
    }    
  }
  }
  catch (...)
  catch (...)
 Lines 132-138    Link Here 
  {
  {
    const svn::PropertyEntry & entry = *it;
    const svn::PropertyEntry & entry = *it;
    SetEntry (entry.name.c_str (), entry.value.c_str ());
    SetEntry (wxString(entry.name.c_str (), wxConvLocal), 
	      wxString(entry.value.c_str (), wxConvLocal));
  
  
    it++;
    it++;
  }
  }
(-) rapidsvn-0.6.0/src/rapidsvn_app.cpp (-3 / +3 lines)
 Lines 33-40    Link Here 
  SetAppName (APPLICATION_NAME);
  SetAppName (APPLICATION_NAME);
  m_locale.Init ();
  m_locale.Init ();
  m_locale.AddCatalogLookupPathPrefix ("locale");
  m_locale.AddCatalogLookupPathPrefix (_("locale"));
  m_locale.AddCatalog ("rapidsvn");
  m_locale.AddCatalog (_("rapidsvn"));
  RapidSvnFrame * frame = new RapidSvnFrame (APPLICATION_NAME);
  RapidSvnFrame * frame = new RapidSvnFrame (APPLICATION_NAME);
  frame->Show (TRUE);
  frame->Show (TRUE);
 Lines 62-68    Link Here 
  
  
  if (prefs.purgeTempFiles)
  if (prefs.purgeTempFiles)
  {
  {
    wxString str (filename);
    wxString str (filename, wxConvLocal);
    m_TempFiles.Add(str);
    m_TempFiles.Add(str);
  }
  }
  else
  else
(-) rapidsvn-0.6.0/src/rapidsvn_frame.cpp (-41 / +42 lines)
 Lines 78-93    Link Here 
static const int NUM_ITEMS = 30;
static const int NUM_ITEMS = 30;
// List config keys here, to avoid duplicating literal text:
// List config keys here, to avoid duplicating literal text:
const static char ConfigLeft[] = "/MainFrame/Left";
const static wxChar * const ConfigLeft = _("/MainFrame/Left");
const static char ConfigTop[] = "/MainFrame/Top";
const static wxChar * const ConfigTop = _("/MainFrame/Top");
const static char ConfigWidth[] = "/MainFrame/Width";
const static wxChar * const ConfigWidth = _("/MainFrame/Width");
const static char ConfigHeight[] = "/MainFrame/Height";
const static wxChar * const ConfigHeight = _("/MainFrame/Height");
const static char ConfigSplitterHoriz[] = "/MainFrame/SplitterHoriz";
const static wxChar * const ConfigSplitterHoriz = _("/MainFrame/SplitterHoriz");
const static char ConfigSplitterVert[] = "/MainFrame/SplitterVert";
const static wxChar * const ConfigSplitterVert = _("/MainFrame/SplitterVert");
const static char ConfigBookmarkFmt[] = "/Bookmarks/Bookmark%ld";
const static wxChar * const ConfigBookmarkFmt = _("/Bookmarks/Bookmark%ld");
const static char ConfigBookmarkCount[] = "/Bookmarks/Count";
const static wxChar * const ConfigBookmarkCount = _("/Bookmarks/Count");
const static char TraceMisc[] = "tracemisc";
const static wxChar * const TraceMisc = _("tracemisc");
// Platform specific constants. 
// Platform specific constants. 
#ifdef __WXMSW__
#ifdef __WXMSW__
 Lines 132-142    Link Here 
 * the column headings in FileListCtrl since they dont have
 * the column headings in FileListCtrl since they dont have
 * shortcuts.
 * shortcuts.
 */
 */
static const char *
static const wxChar *
COLUMN_CAPTIONS[FileListCtrl::COL_COUNT] =
COLUMN_CAPTIONS[FileListCtrl::COL_COUNT] =
{
{
  "", // Name is not used here
  _(""), // Name is not used here
  "", // Path is not used here
  _(""), // Path is not used here
  _("&Revision"),
  _("&Revision"),
  _("R&ep. Rev."),
  _("R&ep. Rev."),
  _("&Author"),
  _("&Author"),
 Lines 372-378    Link Here 
  m_info_panel = new InfoPanel (m_horiz_splitter);
  m_info_panel = new InfoPanel (m_horiz_splitter);
  m_log = new wxTextCtrl (m_horiz_splitter,
  m_log = new wxTextCtrl (m_horiz_splitter,
                          -1,
                          -1,
                          "",
                          _(""),
                          wxPoint (0, 0),
                          wxPoint (0, 0),
                          wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY);
                          wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY);
 Lines 516-529    Link Here 
        wxString msg;
        wxString msg;
        msg.Printf (_("Error while updating filelist (%s)"),
        msg.Printf (_("Error while updating filelist (%s)"),
                    e.message ());
                    e.message ());
        Trace (msg);
        Trace (msg.ToAscii());
        // probably unversioned resource
        // probably unversioned resource
        m_listCtrl->Show (FALSE);
        m_listCtrl->Show (FALSE);
      }
      }
      catch (...)
      catch (...)
      {
      {
        Trace (_("Error while updating filelist"));
        Trace ("Error while updating filelist");
      }
      }
    }
    }
    else
    else
 Lines 787-793    Link Here 
  // admin dir?
  // admin dir?
  wxFileName fileName (dialog.GetPath ());
  wxFileName fileName (dialog.GetPath ());
  if ((fileName.GetName () + fileName.GetExt ()) == SVN_WC_ADM_DIR_NAME)
  if ((fileName.GetName () + fileName.GetExt ()) == _(SVN_WC_ADM_DIR_NAME))
  {
  {
    add = FALSE;
    add = FALSE;
    wxMessageBox (_("You cannot add a subversion "
    wxMessageBox (_("You cannot add a subversion "
 Lines 797-803    Link Here 
  }
  }
  // add
  // add
  m_folder_browser->AddBookmark (dialog.GetPath ());
  m_folder_browser->AddBookmark (dialog.GetPath().ToAscii());
  UpdateFolderBrowser ();
  UpdateFolderBrowser ();
  wxLogStatus (_("Added working copy to bookmarks '%s'"),
  wxLogStatus (_("Added working copy to bookmarks '%s'"),
 Lines 811-817    Link Here 
    UpdateDlg::WITH_URL | 
    UpdateDlg::WITH_URL | 
    UpdateDlg::WITHOUT_RECURSIVE | 
    UpdateDlg::WITHOUT_RECURSIVE | 
    UpdateDlg::WITHOUT_REVISION;
    UpdateDlg::WITHOUT_REVISION;
  UpdateDlg dialog (this, _("Repository URL"), flags);
  UpdateDlg dialog (this, "Repository URL", flags);
  if (dialog.ShowModal () != wxID_OK)
  if (dialog.ShowModal () != wxID_OK)
  {
  {
 Lines 820-826    Link Here 
  // add
  // add
  wxString url = dialog.GetData ().url;
  wxString url = dialog.GetData ().url;
  m_folder_browser->AddBookmark (url);
  m_folder_browser->AddBookmark (url.ToAscii());
  UpdateFolderBrowser ();
  UpdateFolderBrowser ();
  wxLogStatus (_("Added repository to bookmarks '%s'"),
  wxLogStatus (_("Added repository to bookmarks '%s'"),
 Lines 854-862    Link Here 
  for (item = 0; item < count; item++)
  for (item = 0; item < count; item++)
  {
  {
    key.Printf (ConfigBookmarkFmt, item);
    key.Printf (ConfigBookmarkFmt, item);
    if (pConfig->Read (key, &bookmark, ""))
    if (pConfig->Read (key, &bookmark, _("")))
    {
    {
      m_folder_browser->AddBookmark (bookmark);
      m_folder_browser->AddBookmark (bookmark.ToAscii());
    }
    }
    else
    else
 Lines 876-888    Link Here 
  {
  {
    wxString path = m_folder_browser->GetPath ();
    wxString path = m_folder_browser->GetPath ();
    
    
    if (!svn::Url::isValid (path))
    if (!svn::Url::isValid (path.ToAscii()))
    {
    {
      wxFileName fname (path);
      wxFileName fname (path);
      path = fname.GetFullPath ();
      path = fname.GetFullPath ();
    }
    }
    
    
    return svn::Targets (path.c_str ());
    return svn::Targets (path.ToAscii());
  }
  }
  else
  else
  {
  {
 Lines 905-911    Link Here 
    
    
    flags |= Action::IS_DIR;
    flags |= Action::IS_DIR;
    wxString path = m_folder_browser->GetPath ();
    wxString path = m_folder_browser->GetPath ();
    const char * path_c = path.c_str ();
    const char * path_c = path.ToAscii();
    if (*path_c != '\0')
    if (*path_c != '\0')
    {
    {
      flags |= Action::SINGLE_TARGET;
      flags |= Action::SINGLE_TARGET;
 Lines 1184-1190    Link Here 
      break;
      break;
    case ID_Mkdir:
    case ID_Mkdir:
      action = new MkdirAction (this, m_currentPath);
      action = new MkdirAction (this, m_currentPath.ToAscii());
      break;
      break;
    case ID_Merge:
    case ID_Merge:
 Lines 1209-1215    Link Here 
    case ID_Contents: //TODO
    case ID_Contents: //TODO
    default:
    default:
      m_logTracer->Trace ("Unimplemented action!");
      m_logTracer->Trace (_("Unimplemented action!"));
      break;
      break;
    }
    }
  }
  }
 Lines 1226-1243    Link Here 
  switch (token)
  switch (token)
  {
  {
  case TOKEN_INFO:
  case TOKEN_INFO:
    Trace (event.GetString ());
    Trace (event.GetString ().ToAscii());
    break;
    break;
  case TOKEN_SVN_INTERNAL_ERROR:
  case TOKEN_SVN_INTERNAL_ERROR:
  case TOKEN_INTERNAL_ERROR:
  case TOKEN_INTERNAL_ERROR:
    Trace (event.GetString ());
    Trace (event.GetString ().ToAscii());
    UpdateFileList ();
    UpdateFileList ();
    Trace (_("Ready\n"));
    Trace ("Ready\n");
    break;
    break;
  case TOKEN_ACTION_START:
  case TOKEN_ACTION_START:
    Trace (event.GetString ());
    Trace (event.GetString ().ToAscii());
    wxLogStatus (event.GetString ());
    wxLogStatus (event.GetString ());
    break;
    break;
 Lines 1255-1265    Link Here 
      }
      }
      else if ((actionFlags & Action::DONT_UPDATE) == 0)
      else if ((actionFlags & Action::DONT_UPDATE) == 0)
      {
      {
        Trace (_("Updating..."));
        Trace ("Updating...");
        UpdateFileList ();
        UpdateFileList ();
      }
      }
      Trace (_("Ready\n"));
      Trace ("Ready\n");
    }
    }
    break;
    break;
 Lines 1283-1289    Link Here 
  case TOKEN_ADD_BOOKMARK:
  case TOKEN_ADD_BOOKMARK:
    {
    {
      const char * bookmark = event.GetString ().c_str ();
      const char * bookmark = event.GetString ().ToAscii ();
      m_folder_browser->AddBookmark (bookmark);
      m_folder_browser->AddBookmark (bookmark);
      m_folder_browser->Refresh ();
      m_folder_browser->Refresh ();
 Lines 1346-1352    Link Here 
      fileInfo.addPath (path.c_str ());
      fileInfo.addPath (path.c_str ());
    }
    }
    wxString info = fileInfo.info ();
    wxString info (fileInfo.info (), wxConvLocal);
    ReportDlg dlg (this, _("Info"), info, NORMAL_REPORT);
    ReportDlg dlg (this, _("Info"), info, NORMAL_REPORT);
    dlg.ShowModal ();
    dlg.ShowModal ();
 Lines 1400-1406    Link Here 
{
{
  if (m_folder_browser == 0)
  if (m_folder_browser == 0)
  {
  {
    m_currentPath = "";
    m_currentPath = _("");
    m_context = 0;
    m_context = 0;
  }
  }
  else
  else
 Lines 1409-1415    Link Here 
    m_context = m_folder_browser->GetContext ();
    m_context = m_folder_browser->GetContext ();
  }
  }
  SetTitle (m_title + ": " + m_currentPath);
  SetTitle (m_title + _(": ") + m_currentPath);
}
}
bool
bool
 Lines 1442-1448    Link Here 
void
void
RapidSvnFrame::Perform (Action * action)
RapidSvnFrame::Perform (Action * action)
{
{
  action->SetPath (m_currentPath.c_str ());
  action->SetPath (static_cast<const char *>
		   (m_currentPath.ToAscii()));
  action->SetContext (m_context);
  action->SetContext (m_context);
  if ((action->GetFlags () & Action::WITHOUT_TARGET) == 0)
  if ((action->GetFlags () & Action::WITHOUT_TARGET) == 0)
  {
  {
 Lines 1515-1521    Link Here 
{
{
  wxBusyCursor busy;
  wxBusyCursor busy;
  m_currentPath = "";
  m_currentPath = _("");
  UpdateFileList ();
  UpdateFileList ();
  try
  try
 Lines 1539-1545    Link Here 
  if (m_log != 0)
  if (m_log != 0)
  {
  {
    wxString message;
    wxString message;
    message.Printf ("%s\n", msg);
    message.Printf (_("%s\n"), msg);
    m_log->AppendText (message);
    m_log->AppendText (message);
  }
  }
}
}
 Lines 1579-1585    Link Here 
}
}
LogTracer::LogTracer (wxWindow * parent)
LogTracer::LogTracer (wxWindow * parent)
  : wxTextCtrl (parent, -1, "", wxPoint (0, 0),
  : wxTextCtrl (parent, -1, _(""), wxPoint (0, 0),
                wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY)
                wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY)
{
{
  SetMaxLength (0);
  SetMaxLength (0);
 Lines 1588-1594    Link Here 
void
void
LogTracer::Trace (const wxString & str)
LogTracer::Trace (const wxString & str)
{
{
  AppendText (str + "\n");
  AppendText (str + _("\n"));
}
}
/* -----------------------------------------------------------------
/* -----------------------------------------------------------------
 * local variables:
 * local variables:
(-) rapidsvn-0.6.0/src/report_dlg.cpp (-2 / +2 lines)
 Lines 31-37    Link Here 
              wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
              wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
    m_str (data)
    m_str (data)
{
{
  m_text = new wxTextCtrl (this, -1, "",
  m_text = new wxTextCtrl (this, -1, _(""),
                         wxDefaultPosition,
                         wxDefaultPosition,
                         wxSize (500, 200),
                         wxSize (500, 200),
                         wxTE_MULTILINE | wxTE_READONLY | wxTE_RICH);
                         wxTE_MULTILINE | wxTE_READONLY | wxTE_RICH);
 Lines 43-49    Link Here 
  }
  }
  m_text->WriteText (m_str);
  m_text->WriteText (m_str);
  m_button = new wxButton (this, wxID_OK, "OK");
  m_button = new wxButton (this, wxID_OK, _("OK"));
  wxBoxSizer * topsizer = new wxBoxSizer (wxVERTICAL);
  wxBoxSizer * topsizer = new wxBoxSizer (wxVERTICAL);
(-) rapidsvn-0.6.0/src/switch_action.cpp (-4 / +4 lines)
 Lines 37-54    Link Here 
  }
  }
  // first try to get the URL for the target
  // first try to get the URL for the target
  wxString url = "";
  wxString url = _("");
  {
  {
    svn::Path path = GetTarget ();
    svn::Path path = GetTarget ();
    svn::Client client (GetContext ());
    svn::Client client (GetContext ());
    svn::Status status (client.singleStatus (path.c_str ()));
    svn::Status status (client.singleStatus (path.c_str ()));
    url = status.entry ().url ();
    url = wxString(status.entry ().url (), wxConvLocal);
  }
  }
  // create flags for the dialog
  // create flags for the dialog
  int flags = UpdateDlg::WITH_URL;
  int flags = UpdateDlg::WITH_URL;
  UpdateDlg dlg (GetParent (), _("Switch"), flags,
  UpdateDlg dlg (GetParent (), "Switch", flags,
                 true);
                 true);
  dlg.GetData ().url = url;
  dlg.GetData ().url = url;
 Lines 66-72    Link Here 
SwitchAction::Perform ()
SwitchAction::Perform ()
{
{
  svn::Path path = GetTarget ();
  svn::Path path = GetTarget ();
  const char * url = m_data.url.c_str ();
  const char * url = m_data.url.ToAscii ();
  svn::Revision revision (svn::Revision::HEAD);
  svn::Revision revision (svn::Revision::HEAD);
  if (!m_data.useLatest)
  if (!m_data.useLatest)
(-) rapidsvn-0.6.0/src/trace_update.cpp (-7 / +9 lines)
 Lines 11-16    Link Here 
 * ====================================================================
 * ====================================================================
 */
 */
#include "wx/wx.h"
// subversion
// subversion
#include "svn_path.h"
#include "svn_path.h"
#include "svn_wc.h"
#include "svn_wc.h"
 Lines 151-157    Link Here 
  {
  {
    //printf ("A  %s\n", new_db->path);
    //printf ("A  %s\n", new_db->path);
    wxString str = wxString::Format ("A  %s", new_db->path);
    wxString str = wxString::Format (_("A  %s"), new_db->path);
    eb->tracer->Trace (str);
    eb->tracer->Trace (str);
  }
  }
 Lines 194-200    Link Here 
      statchar_buf[1] = 'U';
      statchar_buf[1] = 'U';
    {
    {
      //printf ("%s %s\n", statchar_buf, db->path);
      //printf ("%s %s\n", statchar_buf, db->path);
      wxString str = wxString::Format ("%s %s", statchar_buf, db->path);
      wxString str = wxString::Format (_("%s %s"), statchar_buf, db->path);
      eb->tracer->Trace (str);
      eb->tracer->Trace (str);
    }
    }
 Lines 296-302    Link Here 
  {
  {
    //printf ("%s %s\n", statchar_buf, fb->path);
    //printf ("%s %s\n", statchar_buf, fb->path);
    wxString str = wxString::Format ("%s %s", statchar_buf, fb->path);
    wxString str = wxString::Format (_("%s %s"), statchar_buf, fb->path);
    eb->tracer->Trace (str);
    eb->tracer->Trace (str);
  }
  }
 Lines 347-353    Link Here 
  {
  {
    //printf( "D  %s\n", svn_path_join( eb->path, path, pool ) );
    //printf( "D  %s\n", svn_path_join( eb->path, path, pool ) );
    wxString str =
    wxString str =
      wxString::Format ("D  %s", svn_path_join (eb->path, path, pool));
      wxString::Format (_("D  %s"), svn_path_join (eb->path, path, pool));
    eb->tracer->Trace (str);
    eb->tracer->Trace (str);
  }
  }
  return SVN_NO_ERROR;
  return SVN_NO_ERROR;
 Lines 379-385    Link Here 
      //  eb->revision );
      //  eb->revision );
    {
    {
      wxString str =
      wxString str =
        wxString::Format ("Checked out revision %" SVN_REVNUM_T_FMT ".",
        wxString::Format (_("Checked out revision %" SVN_REVNUM_T_FMT "."),
                          eb->revision);
                          eb->revision);
      eb->tracer->Trace (str);
      eb->tracer->Trace (str);
    }
    }
 Lines 390-396    Link Here 
        //printf( "Updated to revision %" SVN_REVNUM_T_FMT ".\n",
        //printf( "Updated to revision %" SVN_REVNUM_T_FMT ".\n",
        //  eb->revision );
        //  eb->revision );
        wxString str =
        wxString str =
          wxString::Format ("Updated to revision %" SVN_REVNUM_T_FMT ".",
          wxString::Format (_("Updated to revision %" SVN_REVNUM_T_FMT "."),
                            eb->revision);
                            eb->revision);
        eb->tracer->Trace (str);
        eb->tracer->Trace (str);
      }
      }
 Lines 399-405    Link Here 
      {
      {
        //printf( "At revision %" SVN_REVNUM_T_FMT ".\n",
        //printf( "At revision %" SVN_REVNUM_T_FMT ".\n",
        //  eb->revision );
        //  eb->revision );
        wxString str = wxString::Format ("At revision %" SVN_REVNUM_T_FMT ".",
        wxString str = wxString::Format (_("At revision %" SVN_REVNUM_T_FMT "."),
                                         eb->revision);
                                         eb->revision);
        eb->tracer->Trace (str);
        eb->tracer->Trace (str);
      }
      }
(-) rapidsvn-0.6.0/src/tracer.cpp (-3 / +3 lines)
 Lines 28-34    Link Here 
TextCtrlTracer::Trace (const wxString & str)
TextCtrlTracer::Trace (const wxString & str)
{
{
  wxMutexGuiEnter ();
  wxMutexGuiEnter ();
  m_txtCtrl->AppendText (str + "\n");
  m_txtCtrl->AppendText (str + _("\n"));
  wxMutexGuiLeave ();
  wxMutexGuiLeave ();
}
}
 Lines 60-66    Link Here 
void
void
ErrorTracer::Trace (const wxString & str)
ErrorTracer::Trace (const wxString & str)
{
{
  m_msgs += str + "\n";
  m_msgs += str + _("\n");
}
}
void
void
 Lines 78-84    Link Here 
void
void
StringTracer::Trace (const wxString & str)
StringTracer::Trace (const wxString & str)
{
{
  m_msgs += str + "\n";
  m_msgs += str + _("\n");
}
}
/* -----------------------------------------------------------------
/* -----------------------------------------------------------------
 * local variables:
 * local variables:
(-) rapidsvn-0.6.0/src/tviewer.cpp (-3 / +3 lines)
 Lines 31-37    Link Here 
    wxSize size (window->GetCharWidth () * 40, 
    wxSize size (window->GetCharWidth () * 40, 
                 window->GetCharHeight () * 20);
                 window->GetCharHeight () * 20);
    const long style = wxTE_MULTILINE | wxTE_READONLY;
    const long style = wxTE_MULTILINE | wxTE_READONLY;
    m_text = new wxTextCtrl (window, -1, "", wxDefaultPosition,
    m_text = new wxTextCtrl (window, -1, _(""), wxDefaultPosition,
                             size, style);
                             size, style);
    // Close Button
    // Close Button
 Lines 54-60    Link Here 
  SetText (const char * text)
  SetText (const char * text)
  {
  {
    m_text->Show (false);
    m_text->Show (false);
    m_text->SetValue (text);
    m_text->SetValue (wxString(text, wxConvLocal));
    m_text->Show (true);
    m_text->Show (true);
  }
  }
};
};
 Lines 66-72    Link Here 
TextViewer::TextViewer (const char * title)
TextViewer::TextViewer (const char * title)
  : wxDialog (NULL, -1, title,
  : wxDialog (NULL, -1, wxString(title, wxConvLocal),
              wxDefaultPosition, wxDefaultSize,
              wxDefaultPosition, wxDefaultSize,
              wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | 
              wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | 
              wxDIALOG_NO_PARENT)
              wxDIALOG_NO_PARENT)
(-) rapidsvn-0.6.0/src/update_action.cpp (-2 / +2 lines)
 Lines 37-43    Link Here 
    return false;
    return false;
  }
  }
  UpdateDlg dlg (GetParent (), _("Update"));
  UpdateDlg dlg (GetParent (), "Update");
  if (dlg.ShowModal () != wxID_OK)
  if (dlg.ShowModal () != wxID_OK)
  {
  {
 Lines 66-72    Link Here 
  const std::vector<svn::Path> & v = GetTargets ();
  const std::vector<svn::Path> & v = GetTargets ();
  std::vector<svn::Path>::const_iterator it;
  std::vector<svn::Path>::const_iterator it;
  wxSetWorkingDirectory (GetPath ().c_str ());
  wxSetWorkingDirectory (wxString(GetPath ().c_str (), wxConvLocal));
  svn::Client client (GetContext ());
  svn::Client client (GetContext ());
  for (it = v.begin(); it != v.end(); it++)
  for (it = v.begin(); it != v.end(); it++)
  {
  {
(-) rapidsvn-0.6.0/src/update_data.hpp (-1 / +1 lines)
 Lines 19-25    Link Here 
struct UpdateData
struct UpdateData
{
{
  UpdateData()
  UpdateData()
    : revision (""), url (""), useLatest (true), recursive (true)
    : revision (_("")), url (_("")), useLatest (true), recursive (true)
  {
  {
  }
  }
    
    
(-) rapidsvn-0.6.0/src/update_dlg.cpp (-5 / +5 lines)
 Lines 58-64    Link Here 
      wxStaticBoxSizer * sizer = 
      wxStaticBoxSizer * sizer = 
        new wxStaticBoxSizer (box, wxHORIZONTAL);
        new wxStaticBoxSizer (box, wxHORIZONTAL);
      wxTextValidator val (wxFILTER_NONE, &data.url);
      wxTextValidator val (wxFILTER_NONE, &data.url);
      m_textUrl = new wxTextCtrl (window, ID_URL, "",
      m_textUrl = new wxTextCtrl (window, ID_URL, _(""),
                                  wxDefaultPosition, 
                                  wxDefaultPosition, 
                                  wxDefaultSize, 0, val);
                                  wxDefaultSize, 0, val);
      sizer->Add (m_textUrl, 1, wxALL | wxEXPAND, 5);
      sizer->Add (m_textUrl, 1, wxALL | wxEXPAND, 5);
 Lines 72-78    Link Here 
      wxStaticBoxSizer *revSizer = 
      wxStaticBoxSizer *revSizer = 
        new wxStaticBoxSizer (box, wxHORIZONTAL);
        new wxStaticBoxSizer (box, wxHORIZONTAL);
      wxTextValidator val (wxFILTER_NUMERIC, &data.revision);
      wxTextValidator val (wxFILTER_NUMERIC, &data.revision);
      m_textRevision = new wxTextCtrl (window, ID_REVISION, "",
      m_textRevision = new wxTextCtrl (window, ID_REVISION, _(""),
                                       wxDefaultPosition, 
                                       wxDefaultPosition, 
                                       wxDefaultSize, 0, val);
                                       wxDefaultSize, 0, val);
      revSizer->Add (m_textRevision, 1, 
      revSizer->Add (m_textRevision, 1, 
 Lines 135-146    Link Here 
    {
    {
      if (!m_checkUseLatest->IsChecked ())
      if (!m_checkUseLatest->IsChecked ())
      {
      {
        ok = CheckRevision (m_textRevision->GetValue ());
        ok = CheckRevision (m_textRevision->GetValue ().ToAscii());
      }
      }
    }
    }
    if (ok && withUrl ())
    if (ok && withUrl ())
    {
    {
      ok = svn::Url::isValid(m_textUrl->GetValue ());
      ok = svn::Url::isValid(m_textUrl->GetValue ().ToAscii());
    }
    }
    m_buttonOk->Enable (ok);
    m_buttonOk->Enable (ok);
 Lines 178-184    Link Here 
UpdateDlg::UpdateDlg (wxWindow* parent, const char * title, int flags, 
UpdateDlg::UpdateDlg (wxWindow* parent, const char * title, int flags, 
                      bool recursive)
                      bool recursive)
  : wxDialog(parent, -1, title,
  : wxDialog(parent, -1, wxString(title, wxConvLocal),
             wxDefaultPosition, wxDefaultSize,
             wxDefaultPosition, wxDefaultSize,
             wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
             wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
{
(-) rapidsvn-0.6.0/src/utils.cpp (-7 / +7 lines)
 Lines 121-127    Link Here 
wxButton *
wxButton *
CreateEllipsisButton(wxWindow *parent, long id)
CreateEllipsisButton(wxWindow *parent, long id)
{
{
  const char *ELLIPSIS = "...";
  const wxChar * const ELLIPSIS = _("...");
  int ellipsis_width, ellipsis_height;
  int ellipsis_width, ellipsis_height;
  wxButton *button = new wxButton (parent, id, ELLIPSIS);
  wxButton *button = new wxButton (parent, id, ELLIPSIS);
 Lines 190-196    Link Here 
{
{
  svn_revnum_t revnum;
  svn_revnum_t revnum;
  return ParseRevision (revstring, revnum);
  return ParseRevision (wxString(revstring, wxConvLocal), revnum);
}
}
wxCommandEvent
wxCommandEvent
 Lines 205-211    Link Here 
wxMenuItem *
wxMenuItem *
AppendMenuItem (wxMenu & menu, int id)
AppendMenuItem (wxMenu & menu, int id)
{
{
  const char * caption = "";
  const wxChar * caption = _("");
  wxBitmap bitmap;
  wxBitmap bitmap;
  switch (id)
  switch (id)
 Lines 293-299    Link Here 
  // (we check only if the complete parsing failed,
  // (we check only if the complete parsing failed,
  //  not if only the partial string could be parsed)
  //  not if only the partial string could be parsed)
  wxDateTime dateTime;
  wxDateTime dateTime;
  if (dateTime.ParseFormat (datestring, "%c") ==0)
  if (dateTime.ParseFormat (datestring, _("%c")) ==0)
    return false;
    return false;
  apr_time_ansi_put (&date, dateTime.GetTicks ());
  apr_time_ansi_put (&date, dateTime.GetTicks ());
 Lines 314-320    Link Here 
FormatDateTime (apr_time_t date, wxString fmt)
FormatDateTime (apr_time_t date, wxString fmt)
{
{
  if (date == 0)
  if (date == 0)
    return "";
    return _("");
  apr_time_exp_t exp_time;
  apr_time_exp_t exp_time;
  char timestr[80];
  char timestr[80];
 Lines 329-342    Link Here 
  if (apr_err)
  if (apr_err)
    timestr[0] = '\0';
    timestr[0] = '\0';
  return timestr;
  return wxString(timestr, wxConvLocal);
}
}
wxString 
wxString 
BeautifyPath (const wxString & path)
BeautifyPath (const wxString & path)
{
{
  int pos = path.Find (":");
  int pos = path.Find (_(":"));
  if (pos <= 0)
  if (pos <= 0)
    return path;
    return path;
(-) rapidsvn-0.6.0/src/utils.hpp (-1 / +1 lines)
 Lines 167-173    Link Here 
 * @return formatted date/time string
 * @return formatted date/time string
 */
 */
wxString
wxString
FormatDateTime (apr_time_t date, wxString fmt = "%x %X");
FormatDateTime (apr_time_t date, wxString fmt = wxString("%x %X", wxConvLocal));
/**
/**
(-) rapidsvn-0.6.0/src/view_action.cpp (-3 / +3 lines)
 Lines 38-46    Link Here 
bool
bool
ViewAction::Perform ()
ViewAction::Perform ()
{
{
  wxSetWorkingDirectory (GetPath ().c_str ());
  wxSetWorkingDirectory (wxString(GetPath ().c_str (), wxConvLocal));
  svn::Path path (m_data.path.c_str ());
  svn::Path path (m_data.path.ToAscii());
  svn::Client client (GetContext ());
  svn::Client client (GetContext ());
  std::string text = client.cat (path, m_data.revision);
  std::string text = client.cat (path, m_data.revision);
 Lines 48-54    Link Here 
  title.Printf (_("View %s Revision %ld"),
  title.Printf (_("View %s Revision %ld"),
                path.c_str (),
                path.c_str (),
                m_data.revision.revnum ());
                m_data.revision.revnum ());
  TextViewer * viewer = new TextViewer (title);
  TextViewer * viewer = new TextViewer (title.ToAscii());
  viewer->SetText (text.c_str ());
  viewer->SetText (text.c_str ());
  viewer->Show (true);
  viewer->Show (true);