Merge with develop

--HG--
branch : compatibility-develop
hg/compatibility-develop
kervala 8 years ago
commit f8176cedb3

@ -291,7 +291,7 @@ inline sint nlstricmp(const char *lhs, const std::string &rhs) { return stricmp(
#define tStrToUtf8(str) (ucstring((ucchar*)(LPCWSTR)str).toUtf8()) #define tStrToUtf8(str) (ucstring((ucchar*)(LPCWSTR)str).toUtf8())
#define utf8ToTStr(str) ((wchar_t*)ucstring::makeFromUtf8(str).c_str()) #define utf8ToTStr(str) ((wchar_t*)ucstring::makeFromUtf8(str).c_str())
#else #else
#define tStrToUtf8(str) ((LPCSTR)str) #define tStrToUtf8(str) (std::string((LPCSTR)str))
#define utf8ToTStr(str) (str.c_str()) #define utf8ToTStr(str) (str.c_str())
#endif #endif

@ -1120,8 +1120,6 @@ void CPSConstraintMesh::getShapesNames(std::string *shapesNames) const
#endif #endif
} }
//==================================================================================== //====================================================================================
void CPSConstraintMesh::setShape(uint index, const std::string &shapeName) void CPSConstraintMesh::setShape(uint index, const std::string &shapeName)
{ {
@ -1132,7 +1130,6 @@ void CPSConstraintMesh::setShape(uint index, const std::string &shapeName)
_ValidBuild = 0; _ValidBuild = 0;
} }
//==================================================================================== //====================================================================================
const std::string &CPSConstraintMesh::getShape(uint index) const const std::string &CPSConstraintMesh::getShape(uint index) const
{ {

@ -4,17 +4,17 @@ ADD_LIBRARY(ligoscape_utility SHARED ligoscape_utility.rc ${SRC} ligoscape_utili
INCLUDE_DIRECTORIES(${MAXSDK_INCLUDE_DIR}) INCLUDE_DIRECTORIES(${MAXSDK_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(ligoscape_utility TARGET_LINK_LIBRARIES(ligoscape_utility
nelmisc nelmisc
nelligo nelligo
nel3d nel3d
nelpacs nelpacs
${MAXSDK_LIBRARIES} ${MAXSDK_LIBRARIES}
nel_patch_lib nel_patch_lib
nel_mesh_lib nel_mesh_lib
nel_3dsmax_shared nel_3dsmax_shared
comctl32) comctl32)
SET_TARGET_PROPERTIES(ligoscape_utility PROPERTIES SUFFIX ".dlx") SET_TARGET_PROPERTIES(ligoscape_utility PROPERTIES SUFFIX ".dlx")
NL_DEFAULT_PROPS(ligoscape_utility "MAX Plugin: Ligoscape Utility") NL_DEFAULT_PROPS(ligoscape_utility "MAX Plugin: Ligoscape Utility")
NL_ADD_RUNTIME_FLAGS(ligoscape_utility) NL_ADD_RUNTIME_FLAGS(ligoscape_utility)

@ -88,7 +88,7 @@ BOOL CAboutDialog::OnInitDialog()
} }
} }
} }
return TRUE; // return TRUE unless you set the focus to a control return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE // EXCEPTION: OCX Property Pages should return FALSE
} }

@ -287,6 +287,7 @@ void CAnimationSetDlg::refresh (BOOL update)
// Keyframer ? // Keyframer ?
UTrackKeyframer *keyTrack=dynamic_cast<UTrackKeyframer *>(track); UTrackKeyframer *keyTrack=dynamic_cast<UTrackKeyframer *>(track);
if (keyTrack) if (keyTrack)
{ {
// Get number of keys // Get number of keys
@ -316,7 +317,7 @@ void CAnimationSetDlg::refresh (BOOL update)
std::string name = NLMISC::CFile::getFilenameWithoutExtension(object->Saved.SWTFileName[i]); std::string name = NLMISC::CFile::getFilenameWithoutExtension(object->Saved.SWTFileName[i]);
// Get the animation pointer // Get the animation pointer
CSkeletonWeight *swt = object->AnimationSet.getSkeletonWeight (object->AnimationSet.getSkeletonWeightIdByName (name)); CSkeletonWeight *swt = object->AnimationSet.getSkeletonWeight(object->AnimationSet.getSkeletonWeightIdByName(name));
// Insert an intem // Insert an intem
HTREEITEM item=SkelTree.InsertItem(utf8ToTStr(name)); HTREEITEM item=SkelTree.InsertItem(utf8ToTStr(name));

@ -104,8 +104,8 @@ public:
// SchemeWrapper[k].S reference the atriobute maker being edited // SchemeWrapper[k].S reference the atriobute maker being edited
if (_EditedScheme->supportOp( (NL3D::CPSBinOp::BinOp) k)) if (_EditedScheme->supportOp( (NL3D::CPSBinOp::BinOp) k))
{ {
sint index = m_BinOp.AddString(ops[k]) ; sint index = m_BinOp.AddString(ops[k]);
m_BinOp.SetItemData(index, k) ; m_BinOp.SetItemData(index, k);
if ((uint) _EditedScheme->getOp() == k) if ((uint) _EditedScheme->getOp() == k)
{ {
m_BinOp.SetCurSel(k) ; m_BinOp.SetCurSel(k) ;

@ -185,7 +185,6 @@ BOOL CLocatedTargetDlg::OnInitDialog()
} }
} }
const sint posX = 5; const sint posX = 5;
sint posY = 180; sint posY = 180;

@ -111,8 +111,10 @@ void CMeshDlg::OnBrowseShape()
{ {
MessageBox(utf8ToTStr(e.what()), _T("shape loading error")); MessageBox(utf8ToTStr(e.what()), _T("shape loading error"));
} }
updateMeshErrorString(); updateMeshErrorString();
} }
UpdateData(FALSE); UpdateData(FALSE);
} }

@ -220,6 +220,7 @@ void CParticleSystemEdit::updateDieOnEventParams()
{ {
ew = FALSE; ew = FALSE;
} }
GetDlgItem(IDC_APPLY_AFTER_DELAY)->EnableWindow(ew); GetDlgItem(IDC_APPLY_AFTER_DELAY)->EnableWindow(ew);
CString out; CString out;
@ -232,6 +233,7 @@ void CParticleSystemEdit::updateDieOnEventParams()
{ {
out = _T("???"); out = _T("???");
} }
GetDlgItem(IDC_APPLY_AFTER_DELAY)->SetWindowText(out); GetDlgItem(IDC_APPLY_AFTER_DELAY)->SetWindowText(out);
((CButton *) GetDlgItem(IDC_AUTO_DELAY))->SetCheck(autoDelay ? 1 : 0); ((CButton *) GetDlgItem(IDC_AUTO_DELAY))->SetCheck(autoDelay ? 1 : 0);
} }

@ -386,6 +386,7 @@ CParticleWorkspace::CNode *CParticleWorkspace::addNode(const std::string &filena
{ {
relativePath = resultPath; relativePath = resultPath;
} }
if (relativePath.size() >= 2) if (relativePath.size() >= 2)
{ {
if (relativePath[0] == '\\' && relativePath[1] != '\\') if (relativePath[0] == '\\' && relativePath[1] != '\\')
@ -393,6 +394,7 @@ CParticleWorkspace::CNode *CParticleWorkspace::addNode(const std::string &filena
relativePath = relativePath.substr(1); relativePath = relativePath.substr(1);
} }
} }
CNode *newNode = new CNode; CNode *newNode = new CNode;
newNode->init(this); newNode->init(this);
newNode->setRelativePath(relativePath); newNode->setRelativePath(relativePath);

@ -199,12 +199,15 @@ void CSkeletonScaleDlg::setSkeletonToEdit(NL3D::CSkeletonModel *skel, const std
{ {
for(uint i=0;i<_SkeletonModel->Bones.size();i++) for(uint i=0;i<_SkeletonModel->Bones.size();i++)
{ {
const std::string tabStr= " "; const std::string tabStr = " ";
std::string name= _SkeletonModel->Bones[i].getBoneName(); std::string name = _SkeletonModel->Bones[i].getBoneName();
// append a tab for easy hierarchy // append a tab for easy hierarchy
uint boneId= i; uint boneId = i;
while((boneId=_SkeletonModel->Bones[boneId].getFatherId())!=-1) while((boneId=_SkeletonModel->Bones[boneId].getFatherId())!=-1)
name= tabStr + name; name = tabStr + name;
// append to the list // append to the list
_BoneList.AddString(utf8ToTStr(name)); _BoneList.AddString(utf8ToTStr(name));
} }
@ -1222,7 +1225,7 @@ void CSkeletonScaleDlg::OnSsdButtonSaveScale()
return; return;
// choose the file // choose the file
std::string defaultFileName= _SkeletonFileName; std::string defaultFileName = _SkeletonFileName;
NLMISC::strFindReplace(defaultFileName, ".skel", ".scale"); NLMISC::strFindReplace(defaultFileName, ".skel", ".scale");
CFileDialog fd(FALSE, _T("scale"), utf8ToTStr(defaultFileName), OFN_OVERWRITEPROMPT, _T("SkelScaleFiles (*.scale)|*.scale|All Files (*.*)|*.*||"), this) ; CFileDialog fd(FALSE, _T("scale"), utf8ToTStr(defaultFileName), OFN_OVERWRITEPROMPT, _T("SkelScaleFiles (*.scale)|*.scale|All Files (*.*)|*.*||"), this) ;

@ -114,6 +114,7 @@ void CSnapshotToolDlg::stringFromRegistry(HKEY hKey, const TCHAR *name, CString
DWORD type; DWORD type;
DWORD size; DWORD size;
LONG result = RegQueryValueEx(hKey, name, NULL, &type, NULL, &size); LONG result = RegQueryValueEx(hKey, name, NULL, &type, NULL, &size);
if (type != REG_SZ || result != ERROR_SUCCESS || size == 0) if (type != REG_SZ || result != ERROR_SUCCESS || size == 0)
{ {
dest = defaultStr; dest = defaultStr;
@ -144,18 +145,22 @@ template <class T, class U> void integralTypeFromRegistry(HKEY hKey, const TCHAR
DWORD type; DWORD type;
DWORD size; DWORD size;
LONG result = RegQueryValueEx(hKey, name, NULL, &type, NULL, &size); LONG result = RegQueryValueEx(hKey, name, NULL, &type, NULL, &size);
if (type != REG_DWORD || result != ERROR_SUCCESS || size == 0) if (type != REG_DWORD || result != ERROR_SUCCESS || size == 0)
{ {
dest = (T) defaultValue; dest = (T) defaultValue;
return; return;
} }
DWORD value; DWORD value;
result = RegQueryValueEx(hKey, name, NULL, &type, LPBYTE(&value), &size); result = RegQueryValueEx(hKey, name, NULL, &type, LPBYTE(&value), &size);
if (result != ERROR_SUCCESS) if (result != ERROR_SUCCESS)
{ {
dest = defaultValue; dest = defaultValue;
return; return;
} }
dest = (T) value; dest = (T) value;
} }
@ -175,6 +180,7 @@ void CSnapshotToolDlg::fromRegistry()
NLMISC::splitString(tStrToUtf8(filters), ",", filterList); NLMISC::splitString(tStrToUtf8(filters), ",", filterList);
m_Filters.ResetContent(); m_Filters.ResetContent();
for (uint k = 0; k < filterList.size(); ++k) for (uint k = 0; k < filterList.size(); ++k)
{ {
m_Filters.AddString(utf8ToTStr(filterList[k])); m_Filters.AddString(utf8ToTStr(filterList[k]));
@ -431,7 +437,6 @@ void CSnapshotToolDlg::OnGo()
} }
} }
// make sure that the screen can contains the window client area // make sure that the screen can contains the window client area
RECT desktopSize; RECT desktopSize;
::GetClientRect(::GetDesktopWindow(), &desktopSize); ::GetClientRect(::GetDesktopWindow(), &desktopSize);

@ -36,11 +36,11 @@ bool CNelExport::exportMesh (const char *sPath, INode& node, TimeValue time)
{ {
// Result to return // Result to return
bool bRet = false; bool bRet = false;
TCHAR tempFileName[MAX_PATH] = { 0 }; TCHAR tempFileName[MAX_PATH] = { 0 };
TCHAR tempPathBuffer[MAX_PATH] = { 0 }; TCHAR tempPathBuffer[MAX_PATH] = { 0 };
try try
{ {
DWORD dwRetVal = GetTempPath(MAX_PATH, tempPathBuffer); DWORD dwRetVal = GetTempPath(MAX_PATH, tempPathBuffer);
if (dwRetVal > MAX_PATH || (dwRetVal == 0)) if (dwRetVal > MAX_PATH || (dwRetVal == 0))
nlerror("GetTempPath failed"); nlerror("GetTempPath failed");
@ -85,7 +85,7 @@ bool CNelExport::exportMesh (const char *sPath, INode& node, TimeValue time)
skeletonShape = NULL; skeletonShape = NULL;
} }
} }
DWORD t = timeGetTime(); DWORD t = timeGetTime();
if (InfoLog) if (InfoLog)
InfoLog->display("Beg buildShape %s \n", node.GetName()); InfoLog->display("Beg buildShape %s \n", node.GetName());
@ -93,7 +93,7 @@ bool CNelExport::exportMesh (const char *sPath, INode& node, TimeValue time)
IShape *pShape = _ExportNel->buildShape(node, time, mapIdPtr, true); IShape *pShape = _ExportNel->buildShape(node, time, mapIdPtr, true);
if (InfoLog) if (InfoLog)
InfoLog->display("End buildShape in %d ms \n", timeGetTime()-t); InfoLog->display("End buildShape in %d ms \n", timeGetTime()-t);
// Conversion success ? // Conversion success ?
if (pShape) if (pShape)
{ {
@ -105,7 +105,7 @@ bool CNelExport::exportMesh (const char *sPath, INode& node, TimeValue time)
{ {
// Create a streamable shape // Create a streamable shape
CShapeStream shapeStream(pShape); CShapeStream shapeStream(pShape);
// Serial the shape // Serial the shape
shapeStream.serial(file); shapeStream.serial(file);
@ -250,9 +250,9 @@ bool CNelExport::exportAnim (const char *sPath, std::vector<INode*>& vectNode, T
{ {
// Result to return // Result to return
bool bRet=false; bool bRet=false;
char tempFileName[MAX_PATH] = { 0 }; char tempFileName[MAX_PATH] = { 0 };
char tempPathBuffer[MAX_PATH] = { 0 }; char tempPathBuffer[MAX_PATH] = { 0 };
try try
{ {
DWORD dwRetVal = GetTempPathA(MAX_PATH, tempPathBuffer); DWORD dwRetVal = GetTempPathA(MAX_PATH, tempPathBuffer);
@ -261,19 +261,19 @@ bool CNelExport::exportAnim (const char *sPath, std::vector<INode*>& vectNode, T
UINT uRetVal = GetTempFileNameA(tempPathBuffer, TEXT("_nel_export_mesh_"), 0, tempFileName); UINT uRetVal = GetTempFileNameA(tempPathBuffer, TEXT("_nel_export_mesh_"), 0, tempFileName);
if (uRetVal == 0) if (uRetVal == 0)
nlerror("GetTempFileName failed"); nlerror("GetTempFileName failed");
// Create an animation file // Create an animation file
CAnimation animFile; CAnimation animFile;
// For each node to export // For each node to export
for (uint n=0; n<vectNode.size(); n++) for (uint n=0; n<vectNode.size(); n++)
{ {
// Get name // Get name
std::string nodeName=""; std::string nodeName="";
// Get NEL3D_APPDATA_EXPORT_ANIMATION_PREFIXE_NAME // Get NEL3D_APPDATA_EXPORT_ANIMATION_PREFIXE_NAME
int prefixe = CExportNel::getScriptAppData (vectNode[n], NEL3D_APPDATA_EXPORT_ANIMATION_PREFIXE_NAME, 0); int prefixe = CExportNel::getScriptAppData (vectNode[n], NEL3D_APPDATA_EXPORT_ANIMATION_PREFIXE_NAME, 0);
// Set the name only if it is a scene animation // Set the name only if it is a scene animation
if (scene || prefixe) if (scene || prefixe)
{ {
@ -290,7 +290,7 @@ bool CNelExport::exportAnim (const char *sPath, std::vector<INode*>& vectNode, T
bool root = vectNode[n]->GetParentNode () == _Ip->GetRootNode(); bool root = vectNode[n]->GetParentNode () == _Ip->GetRootNode();
// Add animation // Add animation
_ExportNel->addAnimation (animFile, *vectNode[n], nodeName.c_str(), root); _ExportNel->addAnimation (animFile, *vectNode[n], nodeName.c_str(), root);
} }
if (vectNode.size()) if (vectNode.size())
@ -401,7 +401,7 @@ bool CNelExport::exportSkeleton (const char *sPath, INode* pNode, TimeValue time
{ {
// Create a streamable shape // Create a streamable shape
CShapeStream shapeStream (skeletonShape); CShapeStream shapeStream (skeletonShape);
// Serial the shape // Serial the shape
shapeStream.serial (file); shapeStream.serial (file);

@ -2372,11 +2372,13 @@ INT_PTR CALLBACK MiscDialogCallback (
currentParam->RemanenceShiftingTexture = SendMessage (GetDlgItem (hwndDlg, IDC_REMANENCE_SHIFTING_TEXTURE), BM_GETCHECK, 0, 0); currentParam->RemanenceShiftingTexture = SendMessage (GetDlgItem (hwndDlg, IDC_REMANENCE_SHIFTING_TEXTURE), BM_GETCHECK, 0, 0);
GetWindowText (GetDlgItem (hwndDlg, IDC_REMANENCE_SLICE_NUMBER), tmp, 512); GetWindowText (GetDlgItem (hwndDlg, IDC_REMANENCE_SLICE_NUMBER), tmp, 512);
uint rsn; uint rsn;
if (NLMISC::fromString(tStrToUtf8(tmp), rsn)) if (NLMISC::fromString(tStrToUtf8(tmp), rsn))
{ {
currentParam->RemanenceSliceNumber = rsn; currentParam->RemanenceSliceNumber = rsn;
} }
GetWindowText (GetDlgItem (hwndDlg, IDC_REMANENCE_SAMPLING_PERIOD), tmp, 512); GetWindowText (GetDlgItem (hwndDlg, IDC_REMANENCE_SAMPLING_PERIOD), tmp, 512);
toFloatMax(tmp, currentParam->RemanenceSamplingPeriod); toFloatMax(tmp, currentParam->RemanenceSamplingPeriod);
GetWindowText (GetDlgItem (hwndDlg, IDC_REMANENCE_ROLLUP_RATIO), tmp, 512); GetWindowText (GetDlgItem (hwndDlg, IDC_REMANENCE_ROLLUP_RATIO), tmp, 512);

@ -35,8 +35,8 @@ enum { po2rpo_params };
//TODO: Add enums for various parameters //TODO: Add enums for various parameters
enum { pb_spin,}; enum { pb_spin,};
static ParamBlockDesc2 po2rpo_param_blk ( po2rpo_params, _T("params"), 0, &PO2RPODesc, static ParamBlockDesc2 po2rpo_param_blk ( po2rpo_params, _T("params"), 0, &PO2RPODesc,
P_AUTO_CONSTRUCT + P_AUTO_UI, PBLOCK_REF, P_AUTO_CONSTRUCT + P_AUTO_UI, PBLOCK_REF,
//rollout //rollout
IDD_PANEL, IDS_PARAMS, 0, 0, NULL, IDD_PANEL, IDS_PARAMS, 0, 0, NULL,
// params // params
@ -67,11 +67,11 @@ PO2RPO::~PO2RPO()
Interval PO2RPO::LocalValidity(TimeValue t) Interval PO2RPO::LocalValidity(TimeValue t)
{ {
// if being edited, return NEVER forces a cache to be built // if being edited, return NEVER forces a cache to be built
// after previous modifier. // after previous modifier.
if (TestAFlag(A_MOD_BEING_EDITED)) if (TestAFlag(A_MOD_BEING_EDITED))
{ {
return NEVER; return NEVER;
} }
//TODO: Return the validity interval of the modifier //TODO: Return the validity interval of the modifier
return NEVER; return NEVER;
@ -81,7 +81,7 @@ Interval PO2RPO::LocalValidity(TimeValue t)
RefTargetHandle PO2RPO::Clone(RemapDir& remap) RefTargetHandle PO2RPO::Clone(RemapDir& remap)
{ {
PO2RPO* newmod = new PO2RPO(); PO2RPO* newmod = new PO2RPO();
//TODO: Add the cloning code here //TODO: Add the cloning code here
newmod->ReplaceReference(0,pblock->Clone(remap)); newmod->ReplaceReference(0,pblock->Clone(remap));
return(newmod); return(newmod);
@ -90,7 +90,7 @@ RefTargetHandle PO2RPO::Clone(RemapDir& remap)
// ----------------------------------------------------------------------------------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------------------------------------------------------------------------------
static int done=0; static int done=0;
void PO2RPO::ModifyObject(TimeValue t, ModContext &mc, ObjectState * os, INode *node) void PO2RPO::ModifyObject(TimeValue t, ModContext &mc, ObjectState * os, INode *node)
{ {
/* /*
if (!done) if (!done)
@ -121,12 +121,12 @@ void PO2RPO::ModifyObject(TimeValue t, ModContext &mc, ObjectState * os, INode *
// ----------------------------------------------------------------------------------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------------------------------------------------------------------------------
extern HINSTANCE hInstance; extern HINSTANCE hInstance;
INT_PTR CALLBACK DlgProc_Panel(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK DlgProc_Panel(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
// ----- // -----
case WM_INITDIALOG: case WM_INITDIALOG:
{ {
// Get the module path // Get the module path
HMODULE hModule = hInstance; HMODULE hModule = hInstance;
@ -214,7 +214,7 @@ void PO2RPO::BeginEditParams( IObjParam *ip, ULONG flags,Animatable *prev )
void PO2RPO::EndEditParams( IObjParam *ip, ULONG flags,Animatable *next) void PO2RPO::EndEditParams( IObjParam *ip, ULONG flags,Animatable *next)
{ {
//PO2RPODesc.EndEditParams(ip, this, flags, next); //PO2RPODesc.EndEditParams(ip, this, flags, next);
ip->DeleteRollupPage(hRollup); ip->DeleteRollupPage(hRollup);
this->ip = NULL; this->ip = NULL;
} }
@ -230,21 +230,21 @@ RefResult PO2RPO::NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget,P
// ----------------------------------------------------------------------------------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------------------------------------------------------------------------------
//From Object //From Object
BOOL PO2RPO::HasUVW() BOOL PO2RPO::HasUVW()
{ {
//TODO: Return whether the object has UVW coordinates or not //TODO: Return whether the object has UVW coordinates or not
return TRUE; return TRUE;
} }
// ----------------------------------------------------------------------------------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------------------------------------------------------------------------------
void PO2RPO::SetGenUVW(BOOL sw) void PO2RPO::SetGenUVW(BOOL sw)
{ {
if (sw==HasUVW()) if (sw==HasUVW())
{ {
return; return;
} }
//TODO: Set the plugin internal value to sw //TODO: Set the plugin internal value to sw
} }
// ----------------------------------------------------------------------------------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------------------------------------------------------------------------------

@ -435,6 +435,7 @@ public:
CBankManager () CBankManager ()
{ {
} }
const NL3D::CTileBank& getBank (std::string& path=GetBankPathName ()) const NL3D::CTileBank& getBank (std::string& path=GetBankPathName ())
{ {
if (path!=_lastPath) if (path!=_lastPath)

@ -371,19 +371,19 @@ RefResult RGBAdd::NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget,
case REFMSG_CHANGE: case REFMSG_CHANGE:
ivalid.SetEmpty(); ivalid.SetEmpty();
if (hTarget == pblock) if (hTarget == pblock)
{ {
// see if this message came from a changing parameter in the pblock, // see if this message came from a changing parameter in the pblock,
// if so, limit rollout update to the changing item and update any active viewport texture // if so, limit rollout update to the changing item and update any active viewport texture
ParamID changing_param = pblock->LastNotifyParamID(); ParamID changing_param = pblock->LastNotifyParamID();
RGBAdd_param_blk.InvalidateUI(changing_param); RGBAdd_param_blk.InvalidateUI(changing_param);
// notify our dependents that we've changed // notify our dependents that we've changed
// NotifyChanged(); //DS this is redundant // NotifyChanged(); //DS this is redundant
} }
break; break;
}
return(REF_SUCCEED);
} }
return(REF_SUCCEED);
}
#define MTL_HDR_CHUNK 0x4000 #define MTL_HDR_CHUNK 0x4000

@ -29,7 +29,7 @@ extern HINSTANCE hInstance;
using namespace NLMISC; using namespace NLMISC;
using namespace NL3D; using namespace NL3D;
class Tile_utility : public UtilityObj class Tile_utility : public UtilityObj
{ {
public: public:
HWND hPanel; HWND hPanel;
@ -44,8 +44,8 @@ public:
void Init(HWND hWnd); void Init(HWND hWnd);
void Destroy(HWND hWnd); void Destroy(HWND hWnd);
void DeleteThis() { } void DeleteThis() { }
void Load (const std::string& path); void Load (const std::string& path);
void SetLand (sint land); void SetLand (sint land);
@ -55,7 +55,7 @@ public:
//Constructor/Destructor //Constructor/Destructor
Tile_utility(); Tile_utility();
~Tile_utility(); ~Tile_utility();
}; };
CTileBank Tile_utility::Bank; CTileBank Tile_utility::Bank;
@ -64,11 +64,11 @@ std::string Tile_utility::Path;
static Tile_utility theTile_utility; static Tile_utility theTile_utility;
class Tile_utilityClassDesc:public ClassDesc2 class Tile_utilityClassDesc:public ClassDesc2
{ {
public: public:
int IsPublic() {return 1;} int IsPublic() {return 1;}
void * Create(BOOL loading = FALSE) void * Create(BOOL loading = FALSE)
{ {
return &theTile_utility; return &theTile_utility;
} }
@ -85,7 +85,7 @@ ClassDesc2* GetTile_utilityDesc() {return &Tile_utilityDesc;}
static INT_PTR CALLBACK Tile_utilityDlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) static INT_PTR CALLBACK Tile_utilityDlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{ {
switch (msg) switch (msg)
{ {
case WM_INITDIALOG: case WM_INITDIALOG:
{ {
@ -159,12 +159,12 @@ static INT_PTR CALLBACK Tile_utilityDlgProc(HWND hWnd, UINT msg, WPARAM wParam,
case WM_LBUTTONDOWN: case WM_LBUTTONDOWN:
case WM_LBUTTONUP: case WM_LBUTTONUP:
case WM_MOUSEMOVE: case WM_MOUSEMOVE:
theTile_utility.ip->RollupMouseMessage(hWnd,msg,wParam,lParam); theTile_utility.ip->RollupMouseMessage(hWnd,msg,wParam,lParam);
break; break;
case WM_COMMAND: case WM_COMMAND:
{ {
int id = LOWORD(wParam); int id = LOWORD(wParam);
switch (id) switch (id)
{ {
case IDC_BANK_PATH: case IDC_BANK_PATH:
{ {
@ -240,7 +240,7 @@ static INT_PTR CALLBACK Tile_utilityDlgProc(HWND hWnd, UINT msg, WPARAM wParam,
Tile_utility::Tile_utility() Tile_utility::Tile_utility()
{ {
iu = NULL; iu = NULL;
ip = NULL; ip = NULL;
hPanel = NULL; hPanel = NULL;
Bank.clear(); Bank.clear();
Land=0; Land=0;
@ -252,7 +252,7 @@ Tile_utility::~Tile_utility()
} }
void Tile_utility::BeginEditParams(Interface *ip,IUtil *iu) void Tile_utility::BeginEditParams(Interface *ip,IUtil *iu)
{ {
this->iu = iu; this->iu = iu;
this->ip = ip; this->ip = ip;
@ -264,8 +264,8 @@ void Tile_utility::BeginEditParams(Interface *ip,IUtil *iu)
0); 0);
SetupUI (); SetupUI ();
} }
void Tile_utility::EndEditParams(Interface *ip,IUtil *iu) void Tile_utility::EndEditParams(Interface *ip,IUtil *iu)
{ {
this->iu = NULL; this->iu = NULL;
this->ip = NULL; this->ip = NULL;
@ -319,7 +319,7 @@ void Tile_utility::SetLand (sint land)
Land=0; Land=0;
SetBankTileSetSet (Land); SetBankTileSetSet (Land);
} }
void Tile_utility::SetupUI () void Tile_utility::SetupUI ()
{ {
// Clear combo box // Clear combo box
@ -333,7 +333,7 @@ void Tile_utility::SetupUI ()
// Enable combo box // Enable combo box
if (Bank.getLandCount()) if (Bank.getLandCount())
EnableWindow (hCombo, TRUE); EnableWindow (hCombo, TRUE);
else else
EnableWindow (hCombo, FALSE); EnableWindow (hCombo, FALSE);
} }

@ -1296,6 +1296,7 @@ void CTView::DrawTile(tilelist::iterator i,CDC *pDC,int clear, int n)
{ {
Name = NLMISC::toString("%d", i->id); Name = NLMISC::toString("%d", i->id);
} }
rect_txt.top = pt.y + sizetile_y + spacing_tile_text; rect_txt.top = pt.y + sizetile_y + spacing_tile_text;
rect_txt.bottom += rect_txt.top + sizetext_y; rect_txt.bottom += rect_txt.top + sizetext_y;
rect_txt.left -= spacing_x; rect_txt.left -= spacing_x;

@ -232,8 +232,8 @@ int main(int argc, char *argv[])
dialog.setSelectedComponents(components); dialog.setSelectedComponents(components);
// TODO: check real return codes from Uninstallers // exit if press Cancel button or close dialog
if (!dialog.exec()) return 1; if (!dialog.exec()) return 0;
components = dialog.getSelectedCompenents(); components = dialog.getSelectedCompenents();
} }

@ -4,42 +4,46 @@
<context> <context>
<name>CDownloader</name> <name>CDownloader</name>
<message> <message>
<location filename="../src/downloader.cpp" line="156"/> <location filename="../src/downloader.cpp" line="158"/>
<source>File is larger (%1B) than expected (%2B)</source> <source>File is larger (%1B) than expected (%2B)</source>
<translation>Die Datei ist (%1B) größer als erwartet (%2B)</translation> <translation>Die Datei ist (%1B) größer als erwartet (%2B)</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="186"/> <location filename="../src/downloader.cpp" line="190"/>
<source>Error &apos;%1&apos; occurred when trying to check free disk space on %2.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/downloader.cpp" line="198"/>
<source>You only have %1 bytes left on the device, but %2 bytes are needed.</source> <source>You only have %1 bytes left on the device, but %2 bytes are needed.</source>
<translation>Auf dem Gerät sind nur noch %1 Byte Speicherplatz verfügbar, es werden aber %2 Byte benötigt.</translation> <translation>Auf dem Gerät sind nur noch %1 Byte Speicherplatz verfügbar, es werden aber %2 Byte benötigt.</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="192"/> <location filename="../src/downloader.cpp" line="204"/>
<source>Unable to write file</source> <source>Unable to write file</source>
<translation>Datei kann nicht geschrieben werden</translation> <translation>Datei kann nicht geschrieben werden</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="227"/> <location filename="../src/downloader.cpp" line="239"/>
<source>Timeout</source> <source>Timeout</source>
<translation>Zeitüberschreitung</translation> <translation>Zeitüberschreitung</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="264"/> <location filename="../src/downloader.cpp" line="287"/>
<source>Redirection URL is not defined</source> <source>Redirection URL is not defined</source>
<translation>Weiterleitungs-URL ist nicht definiert</translation> <translation>Weiterleitungs-URL ist nicht definiert</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="329"/>
<source>File is not available, please retry later (status code: %1)</source> <source>File is not available, please retry later (status code: %1)</source>
<translation>Datei ist nicht abrufbar, bitte versuch es später noch einmal (Status-Code: %1)</translation> <translation type="vanished">Datei ist nicht abrufbar, bitte versuch es später noch einmal (Status-Code: %1)</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="336"/> <location filename="../src/downloader.cpp" line="357"/>
<source>Incorrect status code: %1</source> <source>Incorrect status code: %1</source>
<translation>Falscher Status-Code: %1</translation> <translation>Falscher Status-Code: %1</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="382"/> <location filename="../src/downloader.cpp" line="411"/>
<source>HTTP error: %1</source> <source>HTTP error: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -59,7 +63,7 @@
<translation type="vanished">Internet (%1 herunterzuladen)</translation> <translation type="vanished">Internet (%1 herunterzuladen)</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="80"/> <location filename="../src/installdialog.cpp" line="81"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation>Dateien werden installiert nach (benötigt %1):</translation> <translation>Dateien werden installiert nach (benötigt %1):</translation>
</message> </message>
@ -76,7 +80,7 @@
<translation type="vanished">Ryzom konnte im gewählten Verzeichnis nicht gefunden werden. Wähle bitte ein anderes Verzeichnis oder brich ab.</translation> <translation type="vanished">Ryzom konnte im gewählten Verzeichnis nicht gefunden werden. Wähle bitte ein anderes Verzeichnis oder brich ab.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="115"/> <location filename="../src/installdialog.cpp" line="116"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation>Bitte wähle ein Verzeichnis, in dem Ryzom installiert werden soll.</translation> <translation>Bitte wähle ein Verzeichnis, in dem Ryzom installiert werden soll.</translation>
</message> </message>
@ -89,32 +93,32 @@
<translation type="vanished">Undefiniert</translation> <translation type="vanished">Undefiniert</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation>Nicht genügend freier Festplattenspeicher</translation> <translation>Nicht genügend freier Festplattenspeicher</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation>Auf diesem Laufwerk ist nicht genügend freier Speicher verfügbar, bitte schaffe mehr Platz oder wähle ein Verzeichnis auf einem anderen Laufwerk.</translation> <translation>Auf diesem Laufwerk ist nicht genügend freier Speicher verfügbar, bitte schaffe mehr Platz oder wähle ein Verzeichnis auf einem anderen Laufwerk.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation>In das Verzeichnis konnte nicht geschrieben werden</translation> <translation>In das Verzeichnis konnte nicht geschrieben werden</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation>Du hast nicht die Berechtigungen, um mit deinem derzeitigen Benutzer-Konto in dieses Verzeichnis zu schreiben, bitte wähle ein anderes Verzeichnis.</translation> <translation>Du hast nicht die Berechtigungen, um mit deinem derzeitigen Benutzer-Konto in dieses Verzeichnis zu schreiben, bitte wähle ein anderes Verzeichnis.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation>Verzeichnist ist nicht leer</translation> <translation>Verzeichnist ist nicht leer</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation>Dieses Verzeichnis ist nicht leer, bitte wähle ein anderes.</translation> <translation>Dieses Verzeichnis ist nicht leer, bitte wähle ein anderes.</translation>
</message> </message>
@ -122,27 +126,27 @@
<context> <context>
<name>CMainWindow</name> <name>CMainWindow</name>
<message> <message>
<location filename="../src/mainwindow.cpp" line="270"/> <location filename="../src/mainwindow.cpp" line="287"/>
<source>About %1</source> <source>About %1</source>
<translation>Über %1</translation> <translation>Über %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="272"/> <location filename="../src/mainwindow.cpp" line="289"/>
<source>Program to install, download and manage Ryzom profiles.</source> <source>Program to install, download and manage Ryzom profiles.</source>
<translation>Programm, um Ryzom-Profile zu installieren, herunterzuladen und zu verwalten.</translation> <translation>Programm, um Ryzom-Profile zu installieren, herunterzuladen und zu verwalten.</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="274"/> <location filename="../src/mainwindow.cpp" line="291"/>
<source>Author: %1</source> <source>Author: %1</source>
<translation>Autor: %1</translation> <translation>Autor: %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="275"/> <location filename="../src/mainwindow.cpp" line="292"/>
<source>Copyright: %1</source> <source>Copyright: %1</source>
<translation>Copyright: %1</translation> <translation>Copyright: %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="276"/> <location filename="../src/mainwindow.cpp" line="293"/>
<source>Support: %1</source> <source>Support: %1</source>
<translation>Support: %1</translation> <translation>Support: %1</translation>
</message> </message>
@ -150,42 +154,42 @@
<context> <context>
<name>CMigrateDialog</name> <name>CMigrateDialog</name>
<message> <message>
<location filename="../src/migratedialog.cpp" line="94"/> <location filename="../src/migratedialog.cpp" line="72"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation>Dateien werden installiert nach (benötigt %1):</translation> <translation>Dateien werden installiert nach (benötigt %1):</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="131"/> <location filename="../src/migratedialog.cpp" line="109"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation>Bitte wähle ein Verzeichnis, in dem Ryzom installiert werden soll.</translation> <translation>Bitte wähle ein Verzeichnis, in dem Ryzom installiert werden soll.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation>Nicht genügend freier Festplattenspeicher</translation> <translation>Nicht genügend freier Festplattenspeicher</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation>Auf diesem Laufwerk ist nicht genügend freier Speicher verfügbar, bitte schaffe mehr Platz oder wähle ein Verzeichnis auf einem anderen Laufwerk.</translation> <translation>Auf diesem Laufwerk ist nicht genügend freier Speicher verfügbar, bitte schaffe mehr Platz oder wähle ein Verzeichnis auf einem anderen Laufwerk.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation>Kann nicht in dieses Verzeichnis schreiben</translation> <translation>Kann nicht in dieses Verzeichnis schreiben</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation>Du hast nicht die Berechtigungen, mit deinem derzeitigen Benutzer-Konto in dieses Verzeichnis zu schreiben, bitte wähle ein anderes Verzeichnis.</translation> <translation>Du hast nicht die Berechtigungen, mit deinem derzeitigen Benutzer-Konto in dieses Verzeichnis zu schreiben, bitte wähle ein anderes Verzeichnis.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation>Verzeichnis ist nicht leer</translation> <translation>Verzeichnis ist nicht leer</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation>Dieses Verzeichnis ist nicht leer, bitte wähle ein anderes.</translation> <translation>Dieses Verzeichnis ist nicht leer, bitte wähle ein anderes.</translation>
</message> </message>
@ -197,109 +201,109 @@
<translation type="vanished">Profile aktualisieren</translation> <translation type="vanished">Profile aktualisieren</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="275"/> <location filename="../src/operationdialog.cpp" line="276"/>
<source>Updating profiles...</source> <source>Updating profiles...</source>
<translation>Aktualisiere Profile...</translation> <translation>Aktualisiere Profile...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Confirmation</source> <source>Confirmation</source>
<translation>Bestätigung</translation> <translation>Bestätigung</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later. <source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later.
Are you sure to abort download?</source> Are you sure to abort download?</source>
<translation>Warnung: dieser Server unterstützt kein Fortsetzen! Wenn du jetzt den Download abbrichst, wirst du nicht in der Lage sein, ihn später wieder fortzusetzen. <translation>Warnung: dieser Server unterstützt kein Fortsetzen! Wenn du jetzt den Download abbrichst, wirst du nicht in der Lage sein, ihn später wieder fortzusetzen.
Willst du den Download wirklich abbrechen?</translation> Willst du den Download wirklich abbrechen?</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="453"/> <location filename="../src/operationdialog.cpp" line="454"/>
<source>%p% (%v/%m KiB)</source> <source>%p% (%v/%m KiB)</source>
<translation>%p% (%v/%m KiB)</translation> <translation>%p% (%v/%m KiB)</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="513"/> <location filename="../src/operationdialog.cpp" line="514"/>
<source>Error</source> <source>Error</source>
<translation>Fehler</translation> <translation>Fehler</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="534"/> <location filename="../src/operationdialog.cpp" line="535"/>
<source>Downloading data required by server %1...</source> <source>Downloading data required by server %1...</source>
<translation>Herunterzuladende Daten benötigt von Server %1...</translation> <translation>Herunterzuladende Daten benötigt von Server %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="545"/> <location filename="../src/operationdialog.cpp" line="546"/>
<source>Extracting data required by server %1...</source> <source>Extracting data required by server %1...</source>
<translation>Zu extrahierende Daten benötigt von Server %1...</translation> <translation>Zu extrahierende Daten benötigt von Server %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="569"/> <location filename="../src/operationdialog.cpp" line="570"/>
<source>Downloading client required by server %1...</source> <source>Downloading client required by server %1...</source>
<translation>Herunterzuladender Client benötigt von Server %1...</translation> <translation>Herunterzuladender Client benötigt von Server %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="580"/> <location filename="../src/operationdialog.cpp" line="581"/>
<source>Extracting client required by server %1...</source> <source>Extracting client required by server %1...</source>
<translation>Zu extrahierender Client benötigt von Server %1...</translation> <translation>Zu extrahierender Client benötigt von Server %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="602"/> <location filename="../src/operationdialog.cpp" line="603"/>
<source>Copying data required by server %1...</source> <source>Copying data required by server %1...</source>
<translation>Zu kopierende Daten benötigt von Server %1...</translation> <translation>Zu kopierende Daten benötigt von Server %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="631"/> <location filename="../src/operationdialog.cpp" line="632"/>
<source>Copying old profile to new location...</source> <source>Copying old profile to new location...</source>
<translation>Kopiere alte Profile zum neuen Zielort...</translation> <translation>Kopiere alte Profile zum neuen Zielort...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="661"/> <location filename="../src/operationdialog.cpp" line="662"/>
<source>Extracting client to new location...</source> <source>Extracting client to new location...</source>
<translation>Extrahiere Client an neuem Zielort...</translation> <translation>Extrahiere Client an neuem Zielort...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="726"/> <location filename="../src/operationdialog.cpp" line="727"/>
<source>Copying installer to new location...</source> <source>Copying installer to new location...</source>
<translation>Kopiere Installer zum neuen Zielort...</translation> <translation>Kopiere Installer zum neuen Zielort...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="847"/> <location filename="../src/operationdialog.cpp" line="855"/>
<source>Cleaning obsolete files...</source> <source>Cleaning obsolete files...</source>
<translation>Bereinige überholte Dateien...</translation> <translation>Bereinige überholte Dateien...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="862"/> <location filename="../src/operationdialog.cpp" line="870"/>
<source>Creating default profile...</source> <source>Creating default profile...</source>
<translation>Erstelle Standard-Profile...</translation> <translation>Erstelle Standard-Profile...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="921"/> <location filename="../src/operationdialog.cpp" line="929"/>
<source>Creating shortcuts for profile %1...</source> <source>Creating shortcuts for profile %1...</source>
<translation>Erstelle Verknüpfungen für Profile %1...</translation> <translation>Erstelle Verknüpfungen für Profile %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1007"/> <location filename="../src/operationdialog.cpp" line="1015"/>
<source>Deleting client...</source> <source>Deleting client...</source>
<translation>Lösche Client...</translation> <translation>Lösche Client...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1067"/> <location filename="../src/operationdialog.cpp" line="1075"/>
<source>Adding profiles...</source> <source>Adding profiles...</source>
<translation>Füge Profile hinzu...</translation> <translation>Füge Profile hinzu...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1087"/> <location filename="../src/operationdialog.cpp" line="1095"/>
<source>Deleting profiles...</source> <source>Deleting profiles...</source>
<translation>Lösche Profile...</translation> <translation>Lösche Profile...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1140"/> <location filename="../src/operationdialog.cpp" line="1148"/>
<source>Deleting installer...</source> <source>Deleting installer...</source>
<translation>Lösche Installer...</translation> <translation>Lösche Installer...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1192"/> <location filename="../src/operationdialog.cpp" line="1200"/>
<source>Deleting downloaded files...</source> <source>Deleting downloaded files...</source>
<translation>Lösche heruntergeladene Dateien...</translation> <translation>Lösche heruntergeladene Dateien...</translation>
</message> </message>
@ -349,12 +353,12 @@ Willst du den Download wirklich abbrechen?</translation>
<translation type="vanished">Kopiere Installer an neuen Ort</translation> <translation type="vanished">Kopiere Installer an neuen Ort</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>Uninstall old client</source> <source>Uninstall old client</source>
<translation>Deinstalliere alten Client</translation> <translation>Deinstalliere alten Client</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source> <source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source>
<translation>Eine ältere Version von Ryzom wurde auf diesem System gefunden, möchtest du sie deinstallieren, um Festplattenspeicher zu sparen?</translation> <translation>Eine ältere Version von Ryzom wurde auf diesem System gefunden, möchtest du sie deinstallieren, um Festplattenspeicher zu sparen?</translation>
</message> </message>
@ -379,7 +383,7 @@ Willst du den Download wirklich abbrechen?</translation>
<translation type="vanished">Lösche Client-Dateien</translation> <translation type="vanished">Lösche Client-Dateien</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1037"/> <location filename="../src/operationdialog.cpp" line="1045"/>
<source>Unable to delete files for client %1</source> <source>Unable to delete files for client %1</source>
<translation>Dateien für Client %1 konnten nicht gelöscht werden</translation> <translation>Dateien für Client %1 konnten nicht gelöscht werden</translation>
</message> </message>
@ -400,7 +404,7 @@ Willst du den Download wirklich abbrechen?</translation>
<translation type="vanished">Lösche Profil %1...</translation> <translation type="vanished">Lösche Profil %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1116"/> <location filename="../src/operationdialog.cpp" line="1124"/>
<source>Unable to delete files for profile %1</source> <source>Unable to delete files for profile %1</source>
<translation>Dateien für Profil %1 konnten nicht gelöscht werden</translation> <translation>Dateien für Profil %1 konnten nicht gelöscht werden</translation>
</message> </message>
@ -433,17 +437,17 @@ Are you sure to delete this profile?</source>
Bist du sicher, dass du dieses Profil löschen willst?</translation> Bist du sicher, dass du dieses Profil löschen willst?</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="277"/> <location filename="../src/profilesdialog.cpp" line="278"/>
<source>Executables (*)</source> <source>Executables (*)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="283"/> <location filename="../src/profilesdialog.cpp" line="284"/>
<source>Please choose Ryzom client executable to launch</source> <source>Please choose Ryzom client executable to launch</source>
<translation>Bitte wähle die ausführbare Datei, um den Ryzom-Client zu starten</translation> <translation>Bitte wähle die ausführbare Datei, um den Ryzom-Client zu starten</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="275"/> <location filename="../src/profilesdialog.cpp" line="276"/>
<source>Executables (*.exe)</source> <source>Executables (*.exe)</source>
<translation>Ausführbare Dateien (*.exe)</translation> <translation>Ausführbare Dateien (*.exe)</translation>
</message> </message>
@ -753,7 +757,7 @@ Drücke Weiter und folge den verschiedenen Schritten bis zum Ende.</translation>
<translation>Löschen</translation> <translation>Löschen</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="72"/> <location filename="../ui/profilesdialog.ui" line="75"/>
<source>Profile:</source> <source>Profile:</source>
<translation>Profil:</translation> <translation>Profil:</translation>
</message> </message>
@ -762,27 +766,27 @@ Drücke Weiter und folge den verschiedenen Schritten bis zum Ende.</translation>
<translation type="vanished">0</translation> <translation type="vanished">0</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="86"/> <location filename="../ui/profilesdialog.ui" line="89"/>
<source>Name:</source> <source>Name:</source>
<translation>Name:</translation> <translation>Name:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="96"/> <location filename="../ui/profilesdialog.ui" line="99"/>
<source>Server:</source> <source>Server:</source>
<translation>Server:</translation> <translation>Server:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="107"/> <location filename="../ui/profilesdialog.ui" line="110"/>
<source>Atys</source> <source>Atys</source>
<translation>Atys</translation> <translation>Atys</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="112"/> <location filename="../ui/profilesdialog.ui" line="115"/>
<source>Yubo</source> <source>Yubo</source>
<translation>Yubo</translation> <translation>Yubo</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="120"/> <location filename="../ui/profilesdialog.ui" line="123"/>
<source>Executable:</source> <source>Executable:</source>
<translation>Ausführbare Datei:</translation> <translation>Ausführbare Datei:</translation>
</message> </message>
@ -791,27 +795,27 @@ Drücke Weiter und folge den verschiedenen Schritten bis zum Ende.</translation>
<translation type="vanished">ryzom_client_r.exe</translation> <translation type="vanished">ryzom_client_r.exe</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="136"/> <location filename="../ui/profilesdialog.ui" line="139"/>
<source>Default</source> <source>Default</source>
<translation>Standard</translation> <translation>Standard</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="143"/> <location filename="../ui/profilesdialog.ui" line="146"/>
<source>Browse...</source> <source>Browse...</source>
<translation>Durchsuchen...</translation> <translation>Durchsuchen...</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="152"/> <location filename="../ui/profilesdialog.ui" line="155"/>
<source>Arguments:</source> <source>Arguments:</source>
<translation>Argumente:</translation> <translation>Argumente:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="162"/> <location filename="../ui/profilesdialog.ui" line="165"/>
<source>Comments:</source> <source>Comments:</source>
<translation>Kommentare:</translation> <translation>Kommentare:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="179"/> <location filename="../ui/profilesdialog.ui" line="182"/>
<source>Directory:</source> <source>Directory:</source>
<translation>Verzeichnis:</translation> <translation>Verzeichnis:</translation>
</message> </message>
@ -820,22 +824,22 @@ Drücke Weiter und folge den verschiedenen Schritten bis zum Ende.</translation>
<translation type="vanished">~/.ryzom/0</translation> <translation type="vanished">~/.ryzom/0</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="195"/> <location filename="../ui/profilesdialog.ui" line="198"/>
<source>Open</source> <source>Open</source>
<translation>Öffnen</translation> <translation>Öffnen</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="204"/> <location filename="../ui/profilesdialog.ui" line="207"/>
<source>Create shortcuts:</source> <source>Create shortcuts:</source>
<translation>Erstelle Verknüpfungen:</translation> <translation>Erstelle Verknüpfungen:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="213"/> <location filename="../ui/profilesdialog.ui" line="216"/>
<source>Desktop</source> <source>Desktop</source>
<translation>Desktop</translation> <translation>Desktop</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="220"/> <location filename="../ui/profilesdialog.ui" line="223"/>
<source>Start Menu</source> <source>Start Menu</source>
<translation>Start-Menü</translation> <translation>Start-Menü</translation>
</message> </message>
@ -843,116 +847,123 @@ Drücke Weiter und folge den verschiedenen Schritten bis zum Ende.</translation>
<context> <context>
<name>QApplication</name> <name>QApplication</name>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Error</source> <source>Error</source>
<translation>Fehler</translation> <translation>Fehler</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Unable to find ryzom_installer.ini</source> <source>Unable to find ryzom_installer.ini</source>
<translation>ryzom_installer.ini konnte nicht gefunden werden</translation> <translation>ryzom_installer.ini konnte nicht gefunden werden</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="119"/> <location filename="../src/main.cpp" line="123"/>
<source>Installation and launcher tool for Ryzom</source> <source>Installation and launcher tool for Ryzom</source>
<translation>Installations- und Startprogramm für Ryzom</translation> <translation>Installations- und Startprogramm für Ryzom</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="122"/> <location filename="../src/main.cpp" line="126"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation>Deinstallieren</translation> <translation>Deinstallieren</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="125"/> <location filename="../src/main.cpp" line="129"/>
<source>Silent mode</source> <source>Silent mode</source>
<translation>Stiller Modus</translation> <translation>Stiller Modus</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="128"/> <location filename="../src/main.cpp" line="132"/>
<source>Version</source> <source>Version</source>
<translation>Version</translation> <translation>Version</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="131"/> <location filename="../src/main.cpp" line="135"/>
<source>Install itself</source> <source>Install itself</source>
<translation>Selbstinstallation</translation> <translation>Selbstinstallation</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="322"/> <location filename="../src/filesextractor.cpp" line="324"/>
<location filename="../src/filesextractor.cpp" line="580"/> <location filename="../src/filesextractor.cpp" line="629"/>
<source>Unable to open %1</source> <source>Unable to open %1</source>
<translation>%1 konnte nicht geöffnet werden</translation> <translation>%1 konnte nicht geöffnet werden</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="437"/>
<source>Unable to open output file</source> <source>Unable to open output file</source>
<translation>Ausgabe-Datei konnte nicht geöffnet werden</translation> <translation type="vanished">Ausgabe-Datei konnte nicht geöffnet werden</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="446"/>
<source>Unable to write output file</source> <source>Unable to write output file</source>
<translation>Ausgabe-Datei konnte nicht geschrieben werden</translation> <translation type="vanished">Ausgabe-Datei konnte nicht geschrieben werden</translation>
</message>
<message>
<location filename="../src/filesextractor.cpp" line="471"/>
<source>Unable to open output file %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/filesextractor.cpp" line="494"/>
<source>Unable to write output file %1 (%2 bytes written but expecting %3 bytes)</source>
<translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="495"/> <location filename="../src/filesextractor.cpp" line="538"/>
<location filename="../src/filesextractor.cpp" line="503"/> <location filename="../src/filesextractor.cpp" line="546"/>
<source>7zip decoder doesn&apos;t support this archive</source> <source>7zip decoder doesn&apos;t support this archive</source>
<translation>7zip-Decoder unterstützt dieses Archiv nicht</translation> <translation>7zip-Decoder unterstützt dieses Archiv nicht</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="499"/> <location filename="../src/filesextractor.cpp" line="542"/>
<source>Unable to allocate memory</source> <source>Unable to allocate memory</source>
<translation>Speicher konnte nicht zugewiesen werden</translation> <translation>Speicher konnte nicht zugewiesen werden</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="507"/> <location filename="../src/filesextractor.cpp" line="550"/>
<source>File %1 is corrupted, unable to uncompress it</source> <source>File %1 is corrupted, unable to uncompress it</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="515"/> <location filename="../src/filesextractor.cpp" line="558"/>
<source>Error %1</source> <source>Error %1</source>
<translation>Fehler %1</translation> <translation>Fehler %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="542"/> <location filename="../src/filesextractor.cpp" line="587"/>
<source>Unable to create directory %1</source> <source>Unable to create directory %1</source>
<translation>Verzeichnis %1 konnte nicht erstellt werden</translation> <translation>Verzeichnis %1 konnte nicht erstellt werden</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="548"/> <location filename="../src/filesextractor.cpp" line="595"/>
<source>Unable to set permissions of %1</source> <source>Unable to set permissions of %1</source>
<translation>Berechtigungen für %1 konnten nicht gesetzt werden</translation> <translation>Berechtigungen für %1 konnten nicht gesetzt werden</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="663"/> <location filename="../src/filesextractor.cpp" line="718"/>
<source>disk full</source> <source>disk full</source>
<translation>Festplatte voll</translation> <translation>Festplatte voll</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="667"/> <location filename="../src/filesextractor.cpp" line="724"/>
<source>unable to write %1</source> <source>unable to write %1</source>
<translation>Konnte %1 nicht schreiben</translation> <translation>Konnte %1 nicht schreiben</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="671"/> <location filename="../src/filesextractor.cpp" line="730"/>
<source>unable to read %1</source> <source>unable to read %1</source>
<translation>Konnte %1 nicht lesen</translation> <translation>Konnte %1 nicht lesen</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="675"/> <location filename="../src/filesextractor.cpp" line="736"/>
<source>failed (%1)</source> <source>failed (%1)</source>
<translation>Fehlgeschlagen (%1)</translation> <translation>Fehlgeschlagen (%1)</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="678"/> <location filename="../src/filesextractor.cpp" line="739"/>
<source>Unable to unpack %1 to %2: %3</source> <source>Unable to unpack %1 to %2: %3</source>
<translation>Konnte %1 nicht nach %2 entpacken: %3</translation> <translation>Konnte %1 nicht nach %2 entpacken: %3</translation>
</message> </message>
<message> <message>
<location filename="../src/filescopier.cpp" line="189"/>
<source>Unable to copy file %1</source> <source>Unable to copy file %1</source>
<translation>Konnte Datei %1 nicht kopieren</translation> <translation type="vanished">Konnte Datei %1 nicht kopieren</translation>
</message> </message>
<message> <message>
<location filename="../src/profile.cpp" line="58"/> <location filename="../src/profile.cpp" line="58"/>
@ -964,6 +975,11 @@ Drücke Weiter und folge den verschiedenen Schritten bis zum Ende.</translation>
<source>Profile name %1 is using invalid character %2 at position %3</source> <source>Profile name %1 is using invalid character %2 at position %3</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/filescopier.cpp" line="179"/>
<source>Unable to copy file %1 to %2</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>QObject</name> <name>QObject</name>

@ -4,42 +4,42 @@
<context> <context>
<name>CDownloader</name> <name>CDownloader</name>
<message> <message>
<location filename="../src/downloader.cpp" line="156"/> <location filename="../src/downloader.cpp" line="158"/>
<source>File is larger (%1B) than expected (%2B)</source> <source>File is larger (%1B) than expected (%2B)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="186"/> <location filename="../src/downloader.cpp" line="190"/>
<source>Error &apos;%1&apos; occurred when trying to check free disk space on %2.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/downloader.cpp" line="198"/>
<source>You only have %1 bytes left on the device, but %2 bytes are needed.</source> <source>You only have %1 bytes left on the device, but %2 bytes are needed.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="192"/> <location filename="../src/downloader.cpp" line="204"/>
<source>Unable to write file</source> <source>Unable to write file</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="227"/> <location filename="../src/downloader.cpp" line="239"/>
<source>Timeout</source> <source>Timeout</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="264"/> <location filename="../src/downloader.cpp" line="287"/>
<source>Redirection URL is not defined</source> <source>Redirection URL is not defined</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="329"/> <location filename="../src/downloader.cpp" line="357"/>
<source>File is not available, please retry later (status code: %1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/downloader.cpp" line="336"/>
<source>Incorrect status code: %1</source> <source>Incorrect status code: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="382"/> <location filename="../src/downloader.cpp" line="411"/>
<source>HTTP error: %1</source> <source>HTTP error: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -47,42 +47,42 @@
<context> <context>
<name>CInstallDialog</name> <name>CInstallDialog</name>
<message> <message>
<location filename="../src/installdialog.cpp" line="80"/> <location filename="../src/installdialog.cpp" line="81"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="115"/> <location filename="../src/installdialog.cpp" line="116"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -90,27 +90,27 @@
<context> <context>
<name>CMainWindow</name> <name>CMainWindow</name>
<message> <message>
<location filename="../src/mainwindow.cpp" line="270"/> <location filename="../src/mainwindow.cpp" line="287"/>
<source>About %1</source> <source>About %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="272"/> <location filename="../src/mainwindow.cpp" line="289"/>
<source>Program to install, download and manage Ryzom profiles.</source> <source>Program to install, download and manage Ryzom profiles.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="274"/> <location filename="../src/mainwindow.cpp" line="291"/>
<source>Author: %1</source> <source>Author: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="275"/> <location filename="../src/mainwindow.cpp" line="292"/>
<source>Copyright: %1</source> <source>Copyright: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="276"/> <location filename="../src/mainwindow.cpp" line="293"/>
<source>Support: %1</source> <source>Support: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -118,42 +118,42 @@
<context> <context>
<name>CMigrateDialog</name> <name>CMigrateDialog</name>
<message> <message>
<location filename="../src/migratedialog.cpp" line="94"/> <location filename="../src/migratedialog.cpp" line="72"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="131"/> <location filename="../src/migratedialog.cpp" line="109"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -161,128 +161,128 @@
<context> <context>
<name>COperationDialog</name> <name>COperationDialog</name>
<message> <message>
<location filename="../src/operationdialog.cpp" line="275"/> <location filename="../src/operationdialog.cpp" line="276"/>
<source>Updating profiles...</source> <source>Updating profiles...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Confirmation</source> <source>Confirmation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later. <source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later.
Are you sure to abort download?</source> Are you sure to abort download?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="453"/> <location filename="../src/operationdialog.cpp" line="454"/>
<source>%p% (%v/%m KiB)</source> <source>%p% (%v/%m KiB)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="513"/> <location filename="../src/operationdialog.cpp" line="514"/>
<source>Error</source> <source>Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="534"/> <location filename="../src/operationdialog.cpp" line="535"/>
<source>Downloading data required by server %1...</source> <source>Downloading data required by server %1...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="545"/> <location filename="../src/operationdialog.cpp" line="546"/>
<source>Extracting data required by server %1...</source> <source>Extracting data required by server %1...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="569"/> <location filename="../src/operationdialog.cpp" line="570"/>
<source>Downloading client required by server %1...</source> <source>Downloading client required by server %1...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="580"/> <location filename="../src/operationdialog.cpp" line="581"/>
<source>Extracting client required by server %1...</source> <source>Extracting client required by server %1...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="602"/> <location filename="../src/operationdialog.cpp" line="603"/>
<source>Copying data required by server %1...</source> <source>Copying data required by server %1...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="631"/> <location filename="../src/operationdialog.cpp" line="632"/>
<source>Copying old profile to new location...</source> <source>Copying old profile to new location...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="661"/> <location filename="../src/operationdialog.cpp" line="662"/>
<source>Extracting client to new location...</source> <source>Extracting client to new location...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="726"/> <location filename="../src/operationdialog.cpp" line="727"/>
<source>Copying installer to new location...</source> <source>Copying installer to new location...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="847"/> <location filename="../src/operationdialog.cpp" line="855"/>
<source>Cleaning obsolete files...</source> <source>Cleaning obsolete files...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="862"/> <location filename="../src/operationdialog.cpp" line="870"/>
<source>Creating default profile...</source> <source>Creating default profile...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="921"/> <location filename="../src/operationdialog.cpp" line="929"/>
<source>Creating shortcuts for profile %1...</source> <source>Creating shortcuts for profile %1...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1007"/> <location filename="../src/operationdialog.cpp" line="1015"/>
<source>Deleting client...</source> <source>Deleting client...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1067"/> <location filename="../src/operationdialog.cpp" line="1075"/>
<source>Adding profiles...</source> <source>Adding profiles...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1087"/> <location filename="../src/operationdialog.cpp" line="1095"/>
<source>Deleting profiles...</source> <source>Deleting profiles...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1140"/> <location filename="../src/operationdialog.cpp" line="1148"/>
<source>Deleting installer...</source> <source>Deleting installer...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1192"/> <location filename="../src/operationdialog.cpp" line="1200"/>
<source>Deleting downloaded files...</source> <source>Deleting downloaded files...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>Uninstall old client</source> <source>Uninstall old client</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source> <source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1037"/> <location filename="../src/operationdialog.cpp" line="1045"/>
<source>Unable to delete files for client %1</source> <source>Unable to delete files for client %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1116"/> <location filename="../src/operationdialog.cpp" line="1124"/>
<source>Unable to delete files for profile %1</source> <source>Unable to delete files for profile %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -306,17 +306,17 @@ Are you sure to delete this profile?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="277"/> <location filename="../src/profilesdialog.cpp" line="278"/>
<source>Executables (*)</source> <source>Executables (*)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="283"/> <location filename="../src/profilesdialog.cpp" line="284"/>
<source>Please choose Ryzom client executable to launch</source> <source>Please choose Ryzom client executable to launch</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="275"/> <location filename="../src/profilesdialog.cpp" line="276"/>
<source>Executables (*.exe)</source> <source>Executables (*.exe)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -574,77 +574,77 @@ Just press Continue button and follow the different steps until everything is do
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="72"/> <location filename="../ui/profilesdialog.ui" line="75"/>
<source>Profile:</source> <source>Profile:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="86"/> <location filename="../ui/profilesdialog.ui" line="89"/>
<source>Name:</source> <source>Name:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="96"/> <location filename="../ui/profilesdialog.ui" line="99"/>
<source>Server:</source> <source>Server:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="107"/> <location filename="../ui/profilesdialog.ui" line="110"/>
<source>Atys</source> <source>Atys</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="112"/> <location filename="../ui/profilesdialog.ui" line="115"/>
<source>Yubo</source> <source>Yubo</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="120"/> <location filename="../ui/profilesdialog.ui" line="123"/>
<source>Executable:</source> <source>Executable:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="136"/> <location filename="../ui/profilesdialog.ui" line="139"/>
<source>Default</source> <source>Default</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="143"/> <location filename="../ui/profilesdialog.ui" line="146"/>
<source>Browse...</source> <source>Browse...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="152"/> <location filename="../ui/profilesdialog.ui" line="155"/>
<source>Arguments:</source> <source>Arguments:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="162"/> <location filename="../ui/profilesdialog.ui" line="165"/>
<source>Comments:</source> <source>Comments:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="179"/> <location filename="../ui/profilesdialog.ui" line="182"/>
<source>Directory:</source> <source>Directory:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="195"/> <location filename="../ui/profilesdialog.ui" line="198"/>
<source>Open</source> <source>Open</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="204"/> <location filename="../ui/profilesdialog.ui" line="207"/>
<source>Create shortcuts:</source> <source>Create shortcuts:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="213"/> <location filename="../ui/profilesdialog.ui" line="216"/>
<source>Desktop</source> <source>Desktop</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="220"/> <location filename="../ui/profilesdialog.ui" line="223"/>
<source>Start Menu</source> <source>Start Menu</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -652,117 +652,112 @@ Just press Continue button and follow the different steps until everything is do
<context> <context>
<name>QApplication</name> <name>QApplication</name>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Error</source> <source>Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Unable to find ryzom_installer.ini</source> <source>Unable to find ryzom_installer.ini</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="119"/> <location filename="../src/main.cpp" line="123"/>
<source>Installation and launcher tool for Ryzom</source> <source>Installation and launcher tool for Ryzom</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="122"/> <location filename="../src/main.cpp" line="126"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="125"/> <location filename="../src/main.cpp" line="129"/>
<source>Silent mode</source> <source>Silent mode</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="128"/> <location filename="../src/main.cpp" line="132"/>
<source>Version</source> <source>Version</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="131"/> <location filename="../src/main.cpp" line="135"/>
<source>Install itself</source> <source>Install itself</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="322"/> <location filename="../src/filesextractor.cpp" line="324"/>
<location filename="../src/filesextractor.cpp" line="580"/> <location filename="../src/filesextractor.cpp" line="629"/>
<source>Unable to open %1</source> <source>Unable to open %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="437"/> <location filename="../src/filesextractor.cpp" line="471"/>
<source>Unable to open output file</source> <source>Unable to open output file %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="446"/> <location filename="../src/filesextractor.cpp" line="494"/>
<source>Unable to write output file</source> <source>Unable to write output file %1 (%2 bytes written but expecting %3 bytes)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="495"/> <location filename="../src/filesextractor.cpp" line="538"/>
<location filename="../src/filesextractor.cpp" line="503"/> <location filename="../src/filesextractor.cpp" line="546"/>
<source>7zip decoder doesn&apos;t support this archive</source> <source>7zip decoder doesn&apos;t support this archive</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="499"/> <location filename="../src/filesextractor.cpp" line="542"/>
<source>Unable to allocate memory</source> <source>Unable to allocate memory</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="507"/> <location filename="../src/filesextractor.cpp" line="550"/>
<source>File %1 is corrupted, unable to uncompress it</source> <source>File %1 is corrupted, unable to uncompress it</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="515"/> <location filename="../src/filesextractor.cpp" line="558"/>
<source>Error %1</source> <source>Error %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="542"/> <location filename="../src/filesextractor.cpp" line="587"/>
<source>Unable to create directory %1</source> <source>Unable to create directory %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="548"/> <location filename="../src/filesextractor.cpp" line="595"/>
<source>Unable to set permissions of %1</source> <source>Unable to set permissions of %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="663"/> <location filename="../src/filesextractor.cpp" line="718"/>
<source>disk full</source> <source>disk full</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="667"/> <location filename="../src/filesextractor.cpp" line="724"/>
<source>unable to write %1</source> <source>unable to write %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="671"/> <location filename="../src/filesextractor.cpp" line="730"/>
<source>unable to read %1</source> <source>unable to read %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="675"/> <location filename="../src/filesextractor.cpp" line="736"/>
<source>failed (%1)</source> <source>failed (%1)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="678"/> <location filename="../src/filesextractor.cpp" line="739"/>
<source>Unable to unpack %1 to %2: %3</source> <source>Unable to unpack %1 to %2: %3</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/filescopier.cpp" line="189"/>
<source>Unable to copy file %1</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="../src/profile.cpp" line="58"/> <location filename="../src/profile.cpp" line="58"/>
<source>Profile ID %1 is using invalid characters (only lowercase letters, numbers and underscore are allowed)</source> <source>Profile ID %1 is using invalid characters (only lowercase letters, numbers and underscore are allowed)</source>
@ -773,6 +768,11 @@ Just press Continue button and follow the different steps until everything is do
<source>Profile name %1 is using invalid character %2 at position %3</source> <source>Profile name %1 is using invalid character %2 at position %3</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/filescopier.cpp" line="179"/>
<source>Unable to copy file %1 to %2</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>QObject</name> <name>QObject</name>

@ -4,42 +4,46 @@
<context> <context>
<name>CDownloader</name> <name>CDownloader</name>
<message> <message>
<location filename="../src/downloader.cpp" line="156"/> <location filename="../src/downloader.cpp" line="158"/>
<source>File is larger (%1B) than expected (%2B)</source> <source>File is larger (%1B) than expected (%2B)</source>
<translation>Le fichier est plus volumineux (%1o) que prévu (%2o)</translation> <translation>Le fichier est plus volumineux (%1o) que prévu (%2o)</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="186"/> <location filename="../src/downloader.cpp" line="190"/>
<source>Error &apos;%1&apos; occurred when trying to check free disk space on %2.</source>
<translation>Erreur &apos;%1&apos; détectée lors de la vérification de l&apos;espace disque sur %2.</translation>
</message>
<message>
<location filename="../src/downloader.cpp" line="198"/>
<source>You only have %1 bytes left on the device, but %2 bytes are needed.</source> <source>You only have %1 bytes left on the device, but %2 bytes are needed.</source>
<translation>Il vous reste %1 octets de libre sur le disque, mais %2 octets sont nécessaires.</translation> <translation>Il vous reste %1 octets de libre sur le disque, mais %2 octets sont nécessaires.</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="192"/> <location filename="../src/downloader.cpp" line="204"/>
<source>Unable to write file</source> <source>Unable to write file</source>
<translation>Impossible de créer le fichier</translation> <translation>Impossible de créer le fichier</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="227"/> <location filename="../src/downloader.cpp" line="239"/>
<source>Timeout</source> <source>Timeout</source>
<translation>Délai expiré</translation> <translation>Délai expiré</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="264"/> <location filename="../src/downloader.cpp" line="287"/>
<source>Redirection URL is not defined</source> <source>Redirection URL is not defined</source>
<translation>L&apos;URL de redirection n&apos;est pas définie</translation> <translation>L&apos;URL de redirection n&apos;est pas définie</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="329"/>
<source>File is not available, please retry later (status code: %1)</source> <source>File is not available, please retry later (status code: %1)</source>
<translation>Le fichier est indisponible, veuillez réessayer ultérieurement (code de statut : %1) </translation> <translation type="vanished">Le fichier est indisponible, veuillez réessayer ultérieurement (code de statut : %1) </translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="336"/> <location filename="../src/downloader.cpp" line="357"/>
<source>Incorrect status code: %1</source> <source>Incorrect status code: %1</source>
<translation>Code de statut incorrect : %1</translation> <translation>Code de statut incorrect : %1</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="382"/> <location filename="../src/downloader.cpp" line="411"/>
<source>HTTP error: %1</source> <source>HTTP error: %1</source>
<translation>Errreur HTTP : %1</translation> <translation>Errreur HTTP : %1</translation>
</message> </message>
@ -59,7 +63,7 @@
<translation type="vanished">Internet (%1 à télécharger)</translation> <translation type="vanished">Internet (%1 à télécharger)</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="80"/> <location filename="../src/installdialog.cpp" line="81"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation>Les fichiers seront installés dans (%1 nécessaires) :</translation> <translation>Les fichiers seront installés dans (%1 nécessaires) :</translation>
</message> </message>
@ -76,7 +80,7 @@
<translation type="vanished">Impossible de trouver Ryzom dans le répertoire sélectionné. Veuillez en choisir un autre ou annuler.</translation> <translation type="vanished">Impossible de trouver Ryzom dans le répertoire sélectionné. Veuillez en choisir un autre ou annuler.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="115"/> <location filename="../src/installdialog.cpp" line="116"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation>Veuillez choisir le répertoire où Ryzom sera installé</translation> <translation>Veuillez choisir le répertoire où Ryzom sera installé</translation>
</message> </message>
@ -89,32 +93,32 @@
<translation type="vanished">Non défini</translation> <translation type="vanished">Non défini</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation>Espace disque insuffisant</translation> <translation>Espace disque insuffisant</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation>Vous ne disposez pas assez d&apos;espace libre sur ce disque, veuillez en libérer ou choisir un répertoire sur un autre disque.</translation> <translation>Vous ne disposez pas assez d&apos;espace libre sur ce disque, veuillez en libérer ou choisir un répertoire sur un autre disque.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation>Impossible d&apos;écrire dans le répertoire</translation> <translation>Impossible d&apos;écrire dans le répertoire</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation>Vous n&apos;avez pas la permission d&apos;écrire dans ce répertoire avec votre compte utilisateur courant, veuillez en choisir un autre.</translation> <translation>Vous n&apos;avez pas la permission d&apos;écrire dans ce répertoire avec votre compte utilisateur courant, veuillez en choisir un autre.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation>Répertoire non vide</translation> <translation>Répertoire non vide</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation>Ce répertoire n&apos;est pas vide, veuillez en choisir un autre.</translation> <translation>Ce répertoire n&apos;est pas vide, veuillez en choisir un autre.</translation>
</message> </message>
@ -126,27 +130,27 @@
<context> <context>
<name>CMainWindow</name> <name>CMainWindow</name>
<message> <message>
<location filename="../src/mainwindow.cpp" line="270"/> <location filename="../src/mainwindow.cpp" line="287"/>
<source>About %1</source> <source>About %1</source>
<translation>À propos de %1</translation> <translation>À propos de %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="272"/> <location filename="../src/mainwindow.cpp" line="289"/>
<source>Program to install, download and manage Ryzom profiles.</source> <source>Program to install, download and manage Ryzom profiles.</source>
<translation>Programme pour installer, télécharger et gérer les profils de Ryzom.</translation> <translation>Programme pour installer, télécharger et gérer les profils de Ryzom.</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="274"/> <location filename="../src/mainwindow.cpp" line="291"/>
<source>Author: %1</source> <source>Author: %1</source>
<translation>Auteur : %1</translation> <translation>Auteur : %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="275"/> <location filename="../src/mainwindow.cpp" line="292"/>
<source>Copyright: %1</source> <source>Copyright: %1</source>
<translation>Copyright : %1</translation> <translation>Copyright : %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="276"/> <location filename="../src/mainwindow.cpp" line="293"/>
<source>Support: %1</source> <source>Support: %1</source>
<translation>Assistance : %1</translation> <translation>Assistance : %1</translation>
</message> </message>
@ -154,42 +158,42 @@
<context> <context>
<name>CMigrateDialog</name> <name>CMigrateDialog</name>
<message> <message>
<location filename="../src/migratedialog.cpp" line="94"/> <location filename="../src/migratedialog.cpp" line="72"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation>Les fichiers seront installés dans (%1 nécessaires) :</translation> <translation>Les fichiers seront installés dans (%1 nécessaires) :</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="131"/> <location filename="../src/migratedialog.cpp" line="109"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation>Veuillez choisir le répertoire où installer Ryzom</translation> <translation>Veuillez choisir le répertoire où installer Ryzom</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation>Espace disque insuffisant</translation> <translation>Espace disque insuffisant</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation>Vous ne disposez pas assez d&apos;espace libre sur ce disque, veuillez en libérer ou choisir un répertoire sur un autre disque.</translation> <translation>Vous ne disposez pas assez d&apos;espace libre sur ce disque, veuillez en libérer ou choisir un répertoire sur un autre disque.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation>Impossible d&apos;écrire dans le répertoire</translation> <translation>Impossible d&apos;écrire dans le répertoire</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation>Vous n&apos;avez pas la permission d&apos;écrire dans ce répertoire avec votre compte utilisateur courant, veuillez en choisir un autre.</translation> <translation>Vous n&apos;avez pas la permission d&apos;écrire dans ce répertoire avec votre compte utilisateur courant, veuillez en choisir un autre.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation>Répertoire non vide</translation> <translation>Répertoire non vide</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation>Ce répertoire n&apos;est pas vide, veuillez en choisir un autre.</translation> <translation>Ce répertoire n&apos;est pas vide, veuillez en choisir un autre.</translation>
</message> </message>
@ -205,109 +209,109 @@
<translation type="vanished">Mettre à jour les profils</translation> <translation type="vanished">Mettre à jour les profils</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="275"/> <location filename="../src/operationdialog.cpp" line="276"/>
<source>Updating profiles...</source> <source>Updating profiles...</source>
<translation>Mise à jour des profils...</translation> <translation>Mise à jour des profils...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Confirmation</source> <source>Confirmation</source>
<translation>Confirmation</translation> <translation>Confirmation</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later. <source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later.
Are you sure to abort download?</source> Are you sure to abort download?</source>
<translation>Attention, ce serveur ne supporte pas la reprise de téléchargement ! Si vous arrêtez le téléchargement maintenant, vous ne pourrez pas le poursuivre ultérieurement. <translation>Attention, ce serveur ne supporte pas la reprise de téléchargement ! Si vous arrêtez le téléchargement maintenant, vous ne pourrez pas le poursuivre ultérieurement.
Êtes-vous sûr d&apos;interrompre le téléchargement ?</translation> Êtes-vous sûr d&apos;interrompre le téléchargement ?</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="453"/> <location filename="../src/operationdialog.cpp" line="454"/>
<source>%p% (%v/%m KiB)</source> <source>%p% (%v/%m KiB)</source>
<translation>%p% (%v/%m Kio)</translation> <translation>%p% (%v/%m Kio)</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="513"/> <location filename="../src/operationdialog.cpp" line="514"/>
<source>Error</source> <source>Error</source>
<translation>Erreur</translation> <translation>Erreur</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="534"/> <location filename="../src/operationdialog.cpp" line="535"/>
<source>Downloading data required by server %1...</source> <source>Downloading data required by server %1...</source>
<translation>Téléchargement des données nécessaires pour le serveur %1...</translation> <translation>Téléchargement des données nécessaires pour le serveur %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="545"/> <location filename="../src/operationdialog.cpp" line="546"/>
<source>Extracting data required by server %1...</source> <source>Extracting data required by server %1...</source>
<translation>Extraction des données nécessaires pour le serveur %1...</translation> <translation>Extraction des données nécessaires pour le serveur %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="569"/> <location filename="../src/operationdialog.cpp" line="570"/>
<source>Downloading client required by server %1...</source> <source>Downloading client required by server %1...</source>
<translation>Téléchargement du client nécessaire pour le serveur %1...</translation> <translation>Téléchargement du client nécessaire pour le serveur %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="580"/> <location filename="../src/operationdialog.cpp" line="581"/>
<source>Extracting client required by server %1...</source> <source>Extracting client required by server %1...</source>
<translation>Extraction du client nécessaire pour le serveur %1...</translation> <translation>Extraction du client nécessaire pour le serveur %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="602"/> <location filename="../src/operationdialog.cpp" line="603"/>
<source>Copying data required by server %1...</source> <source>Copying data required by server %1...</source>
<translation>Copie des données nécessaires pour le serveur %1...</translation> <translation>Copie des données nécessaires pour le serveur %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="631"/> <location filename="../src/operationdialog.cpp" line="632"/>
<source>Copying old profile to new location...</source> <source>Copying old profile to new location...</source>
<translation>Copie de l&apos;ancien profil vers un nouvel emplacement...</translation> <translation>Copie de l&apos;ancien profil vers un nouvel emplacement...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="661"/> <location filename="../src/operationdialog.cpp" line="662"/>
<source>Extracting client to new location...</source> <source>Extracting client to new location...</source>
<translation>Extraction du client vers un nouvel emplacement...</translation> <translation>Extraction du client vers un nouvel emplacement...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="726"/> <location filename="../src/operationdialog.cpp" line="727"/>
<source>Copying installer to new location...</source> <source>Copying installer to new location...</source>
<translation>Copie de l&apos;installateur vers un nouvel emplacement...</translation> <translation>Copie de l&apos;installateur vers un nouvel emplacement...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="847"/> <location filename="../src/operationdialog.cpp" line="855"/>
<source>Cleaning obsolete files...</source> <source>Cleaning obsolete files...</source>
<translation>Nettoyage des fichiers obsolètes...</translation> <translation>Nettoyage des fichiers obsolètes...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="862"/> <location filename="../src/operationdialog.cpp" line="870"/>
<source>Creating default profile...</source> <source>Creating default profile...</source>
<translation>Création du profil par défaut...</translation> <translation>Création du profil par défaut...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="921"/> <location filename="../src/operationdialog.cpp" line="929"/>
<source>Creating shortcuts for profile %1...</source> <source>Creating shortcuts for profile %1...</source>
<translation>Création des raccourcis pour le profil %1...</translation> <translation>Création des raccourcis pour le profil %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1007"/> <location filename="../src/operationdialog.cpp" line="1015"/>
<source>Deleting client...</source> <source>Deleting client...</source>
<translation>Suppression du client...</translation> <translation>Suppression du client...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1067"/> <location filename="../src/operationdialog.cpp" line="1075"/>
<source>Adding profiles...</source> <source>Adding profiles...</source>
<translation>Ajout des profils...</translation> <translation>Ajout des profils...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1087"/> <location filename="../src/operationdialog.cpp" line="1095"/>
<source>Deleting profiles...</source> <source>Deleting profiles...</source>
<translation>Suppression des profils...</translation> <translation>Suppression des profils...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1140"/> <location filename="../src/operationdialog.cpp" line="1148"/>
<source>Deleting installer...</source> <source>Deleting installer...</source>
<translation>Suppression de l&apos;installateur...</translation> <translation>Suppression de l&apos;installateur...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1192"/> <location filename="../src/operationdialog.cpp" line="1200"/>
<source>Deleting downloaded files...</source> <source>Deleting downloaded files...</source>
<translation>Suppression des fichiers téléchargés...</translation> <translation>Suppression des fichiers téléchargés...</translation>
</message> </message>
@ -356,12 +360,12 @@ Are you sure to abort download?</source>
<translation type="vanished">Copier l&apos;installateur vers un nouvel emplacement</translation> <translation type="vanished">Copier l&apos;installateur vers un nouvel emplacement</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>Uninstall old client</source> <source>Uninstall old client</source>
<translation>Désinstaller l&apos;ancien client</translation> <translation>Désinstaller l&apos;ancien client</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source> <source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source>
<translation>Une ancienne version de Ryzom a été détectée sur ce système, souhaitez-vous la désinstaller afin de libérer de l&apos;espace disque ?</translation> <translation>Une ancienne version de Ryzom a été détectée sur ce système, souhaitez-vous la désinstaller afin de libérer de l&apos;espace disque ?</translation>
</message> </message>
@ -386,7 +390,7 @@ Are you sure to abort download?</source>
<translation type="vanished">Supprimer les fichiers du client</translation> <translation type="vanished">Supprimer les fichiers du client</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1037"/> <location filename="../src/operationdialog.cpp" line="1045"/>
<source>Unable to delete files for client %1</source> <source>Unable to delete files for client %1</source>
<translation>Impossible de supprimer les fichiers du client %1</translation> <translation>Impossible de supprimer les fichiers du client %1</translation>
</message> </message>
@ -407,7 +411,7 @@ Are you sure to abort download?</source>
<translation type="vanished">Suppression du profil %1 en cours...</translation> <translation type="vanished">Suppression du profil %1 en cours...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1116"/> <location filename="../src/operationdialog.cpp" line="1124"/>
<source>Unable to delete files for profile %1</source> <source>Unable to delete files for profile %1</source>
<translation>Impossible de supprimer les fichiers du profil %1</translation> <translation>Impossible de supprimer les fichiers du profil %1</translation>
</message> </message>
@ -440,17 +444,17 @@ Are you sure to delete this profile?</source>
Êtes-vous sûr de supprimer ce profil ?</translation> Êtes-vous sûr de supprimer ce profil ?</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="277"/> <location filename="../src/profilesdialog.cpp" line="278"/>
<source>Executables (*)</source> <source>Executables (*)</source>
<translation>Exécutables (*)</translation> <translation>Exécutables (*)</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="283"/> <location filename="../src/profilesdialog.cpp" line="284"/>
<source>Please choose Ryzom client executable to launch</source> <source>Please choose Ryzom client executable to launch</source>
<translation>Veuillez choisir l&apos;exécutable du client de Ryzom à lancer</translation> <translation>Veuillez choisir l&apos;exécutable du client de Ryzom à lancer</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="275"/> <location filename="../src/profilesdialog.cpp" line="276"/>
<source>Executables (*.exe)</source> <source>Executables (*.exe)</source>
<translation>Exécutables (*.exe)</translation> <translation>Exécutables (*.exe)</translation>
</message> </message>
@ -764,7 +768,7 @@ Vous n&apos;avez qu&apos;à cliquer sur Suivant et suivre les différentes étap
<translation>Supprimer</translation> <translation>Supprimer</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="72"/> <location filename="../ui/profilesdialog.ui" line="75"/>
<source>Profile:</source> <source>Profile:</source>
<translation>Profil :</translation> <translation>Profil :</translation>
</message> </message>
@ -773,27 +777,27 @@ Vous n&apos;avez qu&apos;à cliquer sur Suivant et suivre les différentes étap
<translation type="vanished">0</translation> <translation type="vanished">0</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="86"/> <location filename="../ui/profilesdialog.ui" line="89"/>
<source>Name:</source> <source>Name:</source>
<translation>Nom :</translation> <translation>Nom :</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="96"/> <location filename="../ui/profilesdialog.ui" line="99"/>
<source>Server:</source> <source>Server:</source>
<translation>Serveur :</translation> <translation>Serveur :</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="107"/> <location filename="../ui/profilesdialog.ui" line="110"/>
<source>Atys</source> <source>Atys</source>
<translation>Atys</translation> <translation>Atys</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="112"/> <location filename="../ui/profilesdialog.ui" line="115"/>
<source>Yubo</source> <source>Yubo</source>
<translation>Yubo</translation> <translation>Yubo</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="120"/> <location filename="../ui/profilesdialog.ui" line="123"/>
<source>Executable:</source> <source>Executable:</source>
<translation>Exécutable :</translation> <translation>Exécutable :</translation>
</message> </message>
@ -802,27 +806,27 @@ Vous n&apos;avez qu&apos;à cliquer sur Suivant et suivre les différentes étap
<translation type="vanished">ryzom_client_r.exe</translation> <translation type="vanished">ryzom_client_r.exe</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="136"/> <location filename="../ui/profilesdialog.ui" line="139"/>
<source>Default</source> <source>Default</source>
<translation>Défaut</translation> <translation>Défaut</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="143"/> <location filename="../ui/profilesdialog.ui" line="146"/>
<source>Browse...</source> <source>Browse...</source>
<translation>Parcourir...</translation> <translation>Parcourir...</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="152"/> <location filename="../ui/profilesdialog.ui" line="155"/>
<source>Arguments:</source> <source>Arguments:</source>
<translation>Arguments :</translation> <translation>Arguments :</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="162"/> <location filename="../ui/profilesdialog.ui" line="165"/>
<source>Comments:</source> <source>Comments:</source>
<translation>Commentaires :</translation> <translation>Commentaires :</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="179"/> <location filename="../ui/profilesdialog.ui" line="182"/>
<source>Directory:</source> <source>Directory:</source>
<translation>Répertoire :</translation> <translation>Répertoire :</translation>
</message> </message>
@ -831,22 +835,22 @@ Vous n&apos;avez qu&apos;à cliquer sur Suivant et suivre les différentes étap
<translation type="vanished">~/.ryzom/0</translation> <translation type="vanished">~/.ryzom/0</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="195"/> <location filename="../ui/profilesdialog.ui" line="198"/>
<source>Open</source> <source>Open</source>
<translation>Ouvrir</translation> <translation>Ouvrir</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="204"/> <location filename="../ui/profilesdialog.ui" line="207"/>
<source>Create shortcuts:</source> <source>Create shortcuts:</source>
<translation>Créer les raccourcis :</translation> <translation>Créer les raccourcis :</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="213"/> <location filename="../ui/profilesdialog.ui" line="216"/>
<source>Desktop</source> <source>Desktop</source>
<translation>Bureau</translation> <translation>Bureau</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="220"/> <location filename="../ui/profilesdialog.ui" line="223"/>
<source>Start Menu</source> <source>Start Menu</source>
<translation>Menu Démarrer</translation> <translation>Menu Démarrer</translation>
</message> </message>
@ -854,116 +858,123 @@ Vous n&apos;avez qu&apos;à cliquer sur Suivant et suivre les différentes étap
<context> <context>
<name>QApplication</name> <name>QApplication</name>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Error</source> <source>Error</source>
<translation>Erreur</translation> <translation>Erreur</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Unable to find ryzom_installer.ini</source> <source>Unable to find ryzom_installer.ini</source>
<translation>Impossible de trouver ryzom_installer.ini</translation> <translation>Impossible de trouver ryzom_installer.ini</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="119"/> <location filename="../src/main.cpp" line="123"/>
<source>Installation and launcher tool for Ryzom</source> <source>Installation and launcher tool for Ryzom</source>
<translation>Outil d&apos;installation et lanceur pour Ryzom</translation> <translation>Outil d&apos;installation et lanceur pour Ryzom</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="122"/> <location filename="../src/main.cpp" line="126"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation>Désinstaller</translation> <translation>Désinstaller</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="125"/> <location filename="../src/main.cpp" line="129"/>
<source>Silent mode</source> <source>Silent mode</source>
<translation>Mode silencieux</translation> <translation>Mode silencieux</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="128"/> <location filename="../src/main.cpp" line="132"/>
<source>Version</source> <source>Version</source>
<translation>Version</translation> <translation>Version</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="131"/> <location filename="../src/main.cpp" line="135"/>
<source>Install itself</source> <source>Install itself</source>
<translation>S&apos;auto-installer</translation> <translation>S&apos;auto-installer</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="322"/> <location filename="../src/filesextractor.cpp" line="324"/>
<location filename="../src/filesextractor.cpp" line="580"/> <location filename="../src/filesextractor.cpp" line="629"/>
<source>Unable to open %1</source> <source>Unable to open %1</source>
<translation>Impossible d&apos;ouvrir %1</translation> <translation>Impossible d&apos;ouvrir %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="437"/>
<source>Unable to open output file</source> <source>Unable to open output file</source>
<translation>Impossible d&apos;ouvrir le fichier de sortie</translation> <translation type="vanished">Impossible d&apos;ouvrir le fichier de sortie</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="446"/>
<source>Unable to write output file</source> <source>Unable to write output file</source>
<translation>Impossible d&apos;écrire le fichier de sortie</translation> <translation type="vanished">Impossible d&apos;écrire le fichier de sortie</translation>
</message>
<message>
<location filename="../src/filesextractor.cpp" line="471"/>
<source>Unable to open output file %1</source>
<translation>Impossible d&apos;ouvrir le fichier de sortie %1</translation>
</message>
<message>
<location filename="../src/filesextractor.cpp" line="494"/>
<source>Unable to write output file %1 (%2 bytes written but expecting %3 bytes)</source>
<translation>Impossible d&apos;écrire dans le fichier de sortie %1 (%2 octets écrits mais %3 octets attendus)</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="495"/> <location filename="../src/filesextractor.cpp" line="538"/>
<location filename="../src/filesextractor.cpp" line="503"/> <location filename="../src/filesextractor.cpp" line="546"/>
<source>7zip decoder doesn&apos;t support this archive</source> <source>7zip decoder doesn&apos;t support this archive</source>
<translation>Le décodeur 7zip n&apos;est pas compatible avec cette archive</translation> <translation>Le décodeur 7zip n&apos;est pas compatible avec cette archive</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="499"/> <location filename="../src/filesextractor.cpp" line="542"/>
<source>Unable to allocate memory</source> <source>Unable to allocate memory</source>
<translation>Impossible d&apos;allouer la mémoire</translation> <translation>Impossible d&apos;allouer la mémoire</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="507"/> <location filename="../src/filesextractor.cpp" line="550"/>
<source>File %1 is corrupted, unable to uncompress it</source> <source>File %1 is corrupted, unable to uncompress it</source>
<translation>Le fichier %1 est corrompu, impossible de le décompresser</translation> <translation>Le fichier %1 est corrompu, impossible de le décompresser</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="515"/> <location filename="../src/filesextractor.cpp" line="558"/>
<source>Error %1</source> <source>Error %1</source>
<translation>Erreur %1</translation> <translation>Erreur %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="542"/> <location filename="../src/filesextractor.cpp" line="587"/>
<source>Unable to create directory %1</source> <source>Unable to create directory %1</source>
<translation>Impossible de créer le répertoire %1</translation> <translation>Impossible de créer le répertoire %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="548"/> <location filename="../src/filesextractor.cpp" line="595"/>
<source>Unable to set permissions of %1</source> <source>Unable to set permissions of %1</source>
<translation>Impossible de définir les permissions de %1</translation> <translation>Impossible de définir les permissions de %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="663"/> <location filename="../src/filesextractor.cpp" line="718"/>
<source>disk full</source> <source>disk full</source>
<translation>disque plein</translation> <translation>disque plein</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="667"/> <location filename="../src/filesextractor.cpp" line="724"/>
<source>unable to write %1</source> <source>unable to write %1</source>
<translation>impossible d&apos;écrire %1</translation> <translation>impossible d&apos;écrire %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="671"/> <location filename="../src/filesextractor.cpp" line="730"/>
<source>unable to read %1</source> <source>unable to read %1</source>
<translation>impossible de lire %1</translation> <translation>impossible de lire %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="675"/> <location filename="../src/filesextractor.cpp" line="736"/>
<source>failed (%1)</source> <source>failed (%1)</source>
<translation>échec (%1)</translation> <translation>échec (%1)</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="678"/> <location filename="../src/filesextractor.cpp" line="739"/>
<source>Unable to unpack %1 to %2: %3</source> <source>Unable to unpack %1 to %2: %3</source>
<translation>Impossible d&apos;extraire %1 vers %2 : %3 </translation> <translation>Impossible d&apos;extraire %1 vers %2 : %3 </translation>
</message> </message>
<message> <message>
<location filename="../src/filescopier.cpp" line="189"/>
<source>Unable to copy file %1</source> <source>Unable to copy file %1</source>
<translation>Impossible de copier le fichier %1</translation> <translation type="vanished">Impossible de copier le fichier %1</translation>
</message> </message>
<message> <message>
<location filename="../src/profile.cpp" line="58"/> <location filename="../src/profile.cpp" line="58"/>
@ -975,6 +986,11 @@ Vous n&apos;avez qu&apos;à cliquer sur Suivant et suivre les différentes étap
<source>Profile name %1 is using invalid character %2 at position %3</source> <source>Profile name %1 is using invalid character %2 at position %3</source>
<translation>Le nom du profil %1 utilise un caractère invalide %2 à la position %3</translation> <translation>Le nom du profil %1 utilise un caractère invalide %2 à la position %3</translation>
</message> </message>
<message>
<location filename="../src/filescopier.cpp" line="179"/>
<source>Unable to copy file %1 to %2</source>
<translation>Impossible de copier le fichier %1 vers %2</translation>
</message>
</context> </context>
<context> <context>
<name>QObject</name> <name>QObject</name>

@ -4,42 +4,46 @@
<context> <context>
<name>CDownloader</name> <name>CDownloader</name>
<message> <message>
<location filename="../src/downloader.cpp" line="156"/> <location filename="../src/downloader.cpp" line="158"/>
<source>File is larger (%1B) than expected (%2B)</source> <source>File is larger (%1B) than expected (%2B)</source>
<translation>Размер файла больше (%1Б) чем ожидалось (%2Б)</translation> <translation>Размер файла больше (%1Б) чем ожидалось (%2Б)</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="186"/> <location filename="../src/downloader.cpp" line="190"/>
<source>Error &apos;%1&apos; occurred when trying to check free disk space on %2.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/downloader.cpp" line="198"/>
<source>You only have %1 bytes left on the device, but %2 bytes are needed.</source> <source>You only have %1 bytes left on the device, but %2 bytes are needed.</source>
<translation>На диске осталось всего %1 байт, в то время как требуется %2 байт.</translation> <translation>На диске осталось всего %1 байт, в то время как требуется %2 байт.</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="192"/> <location filename="../src/downloader.cpp" line="204"/>
<source>Unable to write file</source> <source>Unable to write file</source>
<translation>Невозможно записать файл</translation> <translation>Невозможно записать файл</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="227"/> <location filename="../src/downloader.cpp" line="239"/>
<source>Timeout</source> <source>Timeout</source>
<translation>Тайм-аут</translation> <translation>Тайм-аут</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="264"/> <location filename="../src/downloader.cpp" line="287"/>
<source>Redirection URL is not defined</source> <source>Redirection URL is not defined</source>
<translation>URL перенаправления не определен</translation> <translation>URL перенаправления не определен</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="329"/>
<source>File is not available, please retry later (status code: %1)</source> <source>File is not available, please retry later (status code: %1)</source>
<translation>Файл недоступен, пожалуйста, попробуйте позднее (код состояния: %1)</translation> <translation type="vanished">Файл недоступен, пожалуйста, попробуйте позднее (код состояния: %1)</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="336"/> <location filename="../src/downloader.cpp" line="357"/>
<source>Incorrect status code: %1</source> <source>Incorrect status code: %1</source>
<translation>Некорректный код состояния: %1</translation> <translation>Некорректный код состояния: %1</translation>
</message> </message>
<message> <message>
<location filename="../src/downloader.cpp" line="382"/> <location filename="../src/downloader.cpp" line="411"/>
<source>HTTP error: %1</source> <source>HTTP error: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -59,7 +63,7 @@
<translation type="vanished">Интернет (%1 для загрузки)</translation> <translation type="vanished">Интернет (%1 для загрузки)</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="80"/> <location filename="../src/installdialog.cpp" line="81"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation>Файлы будут установлены в (требуется %1):</translation> <translation>Файлы будут установлены в (требуется %1):</translation>
</message> </message>
@ -76,7 +80,7 @@
<translation type="vanished">Невозможно найти Ryzom в выбранной директории. Пожалуйста, выберите другую директорию или отмену.</translation> <translation type="vanished">Невозможно найти Ryzom в выбранной директории. Пожалуйста, выберите другую директорию или отмену.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="115"/> <location filename="../src/installdialog.cpp" line="116"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation>Пожалуйста, выберите директорию для установки Ryzom</translation> <translation>Пожалуйста, выберите директорию для установки Ryzom</translation>
</message> </message>
@ -89,32 +93,32 @@
<translation type="vanished">Не определено</translation> <translation type="vanished">Не определено</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation>Недостаточно свободного места</translation> <translation>Недостаточно свободного места</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="138"/> <location filename="../src/installdialog.cpp" line="148"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation>Недостаточно свободного места на выбранном диске, пожалуйста освободите место на диске или выберите директорию на другом диске.</translation> <translation>Недостаточно свободного места на выбранном диске, пожалуйста освободите место на диске или выберите директорию на другом диске.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation>Невозможно осуществить запись в директорию</translation> <translation>Невозможно осуществить запись в директорию</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="157"/> <location filename="../src/installdialog.cpp" line="167"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation>У вашего текущего пользоввателя нет права записи в эту директорию, пожалуйста, выберите другую директорию.</translation> <translation>У вашего текущего пользоввателя нет права записи в эту директорию, пожалуйста, выберите другую директорию.</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation>Директория не является пустой</translation> <translation>Директория не является пустой</translation>
</message> </message>
<message> <message>
<location filename="../src/installdialog.cpp" line="166"/> <location filename="../src/installdialog.cpp" line="176"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation>Эта директория не является пустой, пожалуйста, выберите другую.</translation> <translation>Эта директория не является пустой, пожалуйста, выберите другую.</translation>
</message> </message>
@ -122,27 +126,27 @@
<context> <context>
<name>CMainWindow</name> <name>CMainWindow</name>
<message> <message>
<location filename="../src/mainwindow.cpp" line="270"/> <location filename="../src/mainwindow.cpp" line="287"/>
<source>About %1</source> <source>About %1</source>
<translation>О %1</translation> <translation>О %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="272"/> <location filename="../src/mainwindow.cpp" line="289"/>
<source>Program to install, download and manage Ryzom profiles.</source> <source>Program to install, download and manage Ryzom profiles.</source>
<translation>Программа для установки, загрузки и управления профилями Ryzom.</translation> <translation>Программа для установки, загрузки и управления профилями Ryzom.</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="274"/> <location filename="../src/mainwindow.cpp" line="291"/>
<source>Author: %1</source> <source>Author: %1</source>
<translation>Автор: %1</translation> <translation>Автор: %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="275"/> <location filename="../src/mainwindow.cpp" line="292"/>
<source>Copyright: %1</source> <source>Copyright: %1</source>
<translation>Копирайт: %1</translation> <translation>Копирайт: %1</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow.cpp" line="276"/> <location filename="../src/mainwindow.cpp" line="293"/>
<source>Support: %1</source> <source>Support: %1</source>
<translation>Поддержка: %1</translation> <translation>Поддержка: %1</translation>
</message> </message>
@ -150,42 +154,42 @@
<context> <context>
<name>CMigrateDialog</name> <name>CMigrateDialog</name>
<message> <message>
<location filename="../src/migratedialog.cpp" line="94"/> <location filename="../src/migratedialog.cpp" line="72"/>
<source>Files will be installed to (requires %1):</source> <source>Files will be installed to (requires %1):</source>
<translation>Файлы будут установлены в (требуется %1):</translation> <translation>Файлы будут установлены в (требуется %1):</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="131"/> <location filename="../src/migratedialog.cpp" line="109"/>
<source>Please choose directory to install Ryzom in</source> <source>Please choose directory to install Ryzom in</source>
<translation>Пожалуйста, выберете директорию для установки Ryzom</translation> <translation>Пожалуйста, выберете директорию для установки Ryzom</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>Not enough free disk space</source> <source>Not enough free disk space</source>
<translation>Недостаточно свободного места</translation> <translation>Недостаточно свободного места</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="153"/> <location filename="../src/migratedialog.cpp" line="139"/>
<source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source> <source>You don&apos;t have enough free space on this disk, please make more space or choose a directory on another disk.</source>
<translation>Недостаточно свободного места на выбранном диске, пожалуйста освободите место на диске или выберите директорию на другом диске.</translation> <translation>Недостаточно свободного места на выбранном диске, пожалуйста освободите место на диске или выберите директорию на другом диске.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>Unable to write in directory</source> <source>Unable to write in directory</source>
<translation>Невозможно осуществить запись в директорию</translation> <translation>Невозможно осуществить запись в директорию</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="172"/> <location filename="../src/migratedialog.cpp" line="158"/>
<source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source> <source>You don&apos;t have the permission to write in this directory with your current user account, please choose another directory.</source>
<translation>У вашего текущего пользоввателя нет права записи в эту директорию, пожалуйста, выберите другую директорию.</translation> <translation>У вашего текущего пользоввателя нет права записи в эту директорию, пожалуйста, выберите другую директорию.</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>Directory not empty</source> <source>Directory not empty</source>
<translation>Директория не является пустой</translation> <translation>Директория не является пустой</translation>
</message> </message>
<message> <message>
<location filename="../src/migratedialog.cpp" line="181"/> <location filename="../src/migratedialog.cpp" line="167"/>
<source>This directory is not empty, please choose another one.</source> <source>This directory is not empty, please choose another one.</source>
<translation>Эта директория не является пустой, пожалуйста, выберите другую.</translation> <translation>Эта директория не является пустой, пожалуйста, выберите другую.</translation>
</message> </message>
@ -193,108 +197,108 @@
<context> <context>
<name>COperationDialog</name> <name>COperationDialog</name>
<message> <message>
<location filename="../src/operationdialog.cpp" line="275"/> <location filename="../src/operationdialog.cpp" line="276"/>
<source>Updating profiles...</source> <source>Updating profiles...</source>
<translation>Обновление профилей...</translation> <translation>Обновление профилей...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Confirmation</source> <source>Confirmation</source>
<translation>Подтверждение</translation> <translation>Подтверждение</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="428"/> <location filename="../src/operationdialog.cpp" line="429"/>
<source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later. <source>Warning, this server doesn&apos;t support resume! If you stop download now, you won&apos;t be able to resume it later.
Are you sure to abort download?</source> Are you sure to abort download?</source>
<translation>Внимание, данный сервер не поддерживает возобновление загрузки! Если вы сейчас прервете загрузку, вы не сможете возобновить ее позднее. Вы уверены, что хотите прервать загрузку?</translation> <translation>Внимание, данный сервер не поддерживает возобновление загрузки! Если вы сейчас прервете загрузку, вы не сможете возобновить ее позднее. Вы уверены, что хотите прервать загрузку?</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="453"/> <location filename="../src/operationdialog.cpp" line="454"/>
<source>%p% (%v/%m KiB)</source> <source>%p% (%v/%m KiB)</source>
<translation>%p% (%v/%m Кб)</translation> <translation>%p% (%v/%m Кб)</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="513"/> <location filename="../src/operationdialog.cpp" line="514"/>
<source>Error</source> <source>Error</source>
<translation>Ошибка</translation> <translation>Ошибка</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="534"/> <location filename="../src/operationdialog.cpp" line="535"/>
<source>Downloading data required by server %1...</source> <source>Downloading data required by server %1...</source>
<translation>Загрузка данных, необходимых серверу %1...</translation> <translation>Загрузка данных, необходимых серверу %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="545"/> <location filename="../src/operationdialog.cpp" line="546"/>
<source>Extracting data required by server %1...</source> <source>Extracting data required by server %1...</source>
<translation>Извлечение данных, необходимых серверу %1...</translation> <translation>Извлечение данных, необходимых серверу %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="569"/> <location filename="../src/operationdialog.cpp" line="570"/>
<source>Downloading client required by server %1...</source> <source>Downloading client required by server %1...</source>
<translation>Загрузка клиента, необходимого серверу %1...</translation> <translation>Загрузка клиента, необходимого серверу %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="580"/> <location filename="../src/operationdialog.cpp" line="581"/>
<source>Extracting client required by server %1...</source> <source>Extracting client required by server %1...</source>
<translation>Извлечение файлов клиента, необходимых серверу %1...</translation> <translation>Извлечение файлов клиента, необходимых серверу %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="602"/> <location filename="../src/operationdialog.cpp" line="603"/>
<source>Copying data required by server %1...</source> <source>Copying data required by server %1...</source>
<translation>Копирование данных, необходимых серверу %1...</translation> <translation>Копирование данных, необходимых серверу %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="631"/> <location filename="../src/operationdialog.cpp" line="632"/>
<source>Copying old profile to new location...</source> <source>Copying old profile to new location...</source>
<translation>Копирование предыдущего профиля в новое местоположение...</translation> <translation>Копирование предыдущего профиля в новое местоположение...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="661"/> <location filename="../src/operationdialog.cpp" line="662"/>
<source>Extracting client to new location...</source> <source>Extracting client to new location...</source>
<translation>Извлечение файлов клиента в новое местоположение...</translation> <translation>Извлечение файлов клиента в новое местоположение...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="726"/> <location filename="../src/operationdialog.cpp" line="727"/>
<source>Copying installer to new location...</source> <source>Copying installer to new location...</source>
<translation>Копирование инсталлятора в новое местоположение...</translation> <translation>Копирование инсталлятора в новое местоположение...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="847"/> <location filename="../src/operationdialog.cpp" line="855"/>
<source>Cleaning obsolete files...</source> <source>Cleaning obsolete files...</source>
<translation>Удаление устаревших файлов...</translation> <translation>Удаление устаревших файлов...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="862"/> <location filename="../src/operationdialog.cpp" line="870"/>
<source>Creating default profile...</source> <source>Creating default profile...</source>
<translation>Создание профиля по умолчанию...</translation> <translation>Создание профиля по умолчанию...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="921"/> <location filename="../src/operationdialog.cpp" line="929"/>
<source>Creating shortcuts for profile %1...</source> <source>Creating shortcuts for profile %1...</source>
<translation>Создание ярлыков для профиля %1...</translation> <translation>Создание ярлыков для профиля %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1007"/> <location filename="../src/operationdialog.cpp" line="1015"/>
<source>Deleting client...</source> <source>Deleting client...</source>
<translation>Удаление клиента...</translation> <translation>Удаление клиента...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1067"/> <location filename="../src/operationdialog.cpp" line="1075"/>
<source>Adding profiles...</source> <source>Adding profiles...</source>
<translation>Добавление профилей...</translation> <translation>Добавление профилей...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1087"/> <location filename="../src/operationdialog.cpp" line="1095"/>
<source>Deleting profiles...</source> <source>Deleting profiles...</source>
<translation>Удаление профилей...</translation> <translation>Удаление профилей...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1140"/> <location filename="../src/operationdialog.cpp" line="1148"/>
<source>Deleting installer...</source> <source>Deleting installer...</source>
<translation>Удаление инсталлятора...</translation> <translation>Удаление инсталлятора...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1192"/> <location filename="../src/operationdialog.cpp" line="1200"/>
<source>Deleting downloaded files...</source> <source>Deleting downloaded files...</source>
<translation>Удаление загруженных файлов...</translation> <translation>Удаление загруженных файлов...</translation>
</message> </message>
@ -331,12 +335,12 @@ Are you sure to abort download?</source>
<translation type="vanished">Копирование %1...</translation> <translation type="vanished">Копирование %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>Uninstall old client</source> <source>Uninstall old client</source>
<translation>Удалить предыдущую версию клиента</translation> <translation>Удалить предыдущую версию клиента</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="812"/> <location filename="../src/operationdialog.cpp" line="820"/>
<source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source> <source>An old version of Ryzom has been detected on this system, would you like to uninstall it to save space disk?</source>
<translation>В системе обнаружена предыдущая версия Ryzom, вы хотите удалить ее чтобы освободить место на диске?</translation> <translation>В системе обнаружена предыдущая версия Ryzom, вы хотите удалить ее чтобы освободить место на диске?</translation>
</message> </message>
@ -357,7 +361,7 @@ Are you sure to abort download?</source>
<translation type="vanished">Удалить файлы клиента</translation> <translation type="vanished">Удалить файлы клиента</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1037"/> <location filename="../src/operationdialog.cpp" line="1045"/>
<source>Unable to delete files for client %1</source> <source>Unable to delete files for client %1</source>
<translation>Невозможно удалить файлы клиента %1</translation> <translation>Невозможно удалить файлы клиента %1</translation>
</message> </message>
@ -378,7 +382,7 @@ Are you sure to abort download?</source>
<translation type="vanished">Удаление профиля %1...</translation> <translation type="vanished">Удаление профиля %1...</translation>
</message> </message>
<message> <message>
<location filename="../src/operationdialog.cpp" line="1116"/> <location filename="../src/operationdialog.cpp" line="1124"/>
<source>Unable to delete files for profile %1</source> <source>Unable to delete files for profile %1</source>
<translation>Невозможно удалить файлы профиля %1</translation> <translation>Невозможно удалить файлы профиля %1</translation>
</message> </message>
@ -410,17 +414,17 @@ Are you sure to delete this profile?</source>
<translation>Вы собираетесь удалить профиль, файлы профиля не будут удалены автоматически и их необходимо удалить вручную. Вы уверены, что хотите удалить этот профиль?</translation> <translation>Вы собираетесь удалить профиль, файлы профиля не будут удалены автоматически и их необходимо удалить вручную. Вы уверены, что хотите удалить этот профиль?</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="277"/> <location filename="../src/profilesdialog.cpp" line="278"/>
<source>Executables (*)</source> <source>Executables (*)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="283"/> <location filename="../src/profilesdialog.cpp" line="284"/>
<source>Please choose Ryzom client executable to launch</source> <source>Please choose Ryzom client executable to launch</source>
<translation>Пожалуйста, выберете исполняемый файл для запуска клиента Ryzom</translation> <translation>Пожалуйста, выберете исполняемый файл для запуска клиента Ryzom</translation>
</message> </message>
<message> <message>
<location filename="../src/profilesdialog.cpp" line="275"/> <location filename="../src/profilesdialog.cpp" line="276"/>
<source>Executables (*.exe)</source> <source>Executables (*.exe)</source>
<translation>Исполняемые файлы (*.exe)</translation> <translation>Исполняемые файлы (*.exe)</translation>
</message> </message>
@ -730,7 +734,7 @@ Just press Continue button and follow the different steps until everything is do
<translation>Удалить</translation> <translation>Удалить</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="72"/> <location filename="../ui/profilesdialog.ui" line="75"/>
<source>Profile:</source> <source>Profile:</source>
<translation>Профиль:</translation> <translation>Профиль:</translation>
</message> </message>
@ -739,27 +743,27 @@ Just press Continue button and follow the different steps until everything is do
<translation type="vanished">0</translation> <translation type="vanished">0</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="86"/> <location filename="../ui/profilesdialog.ui" line="89"/>
<source>Name:</source> <source>Name:</source>
<translation>Имя:</translation> <translation>Имя:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="96"/> <location filename="../ui/profilesdialog.ui" line="99"/>
<source>Server:</source> <source>Server:</source>
<translation>Сервер:</translation> <translation>Сервер:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="107"/> <location filename="../ui/profilesdialog.ui" line="110"/>
<source>Atys</source> <source>Atys</source>
<translation>Atys</translation> <translation>Atys</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="112"/> <location filename="../ui/profilesdialog.ui" line="115"/>
<source>Yubo</source> <source>Yubo</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="120"/> <location filename="../ui/profilesdialog.ui" line="123"/>
<source>Executable:</source> <source>Executable:</source>
<translation>Исполняемый файл:</translation> <translation>Исполняемый файл:</translation>
</message> </message>
@ -768,27 +772,27 @@ Just press Continue button and follow the different steps until everything is do
<translation type="vanished">ryzom_client_r.exe</translation> <translation type="vanished">ryzom_client_r.exe</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="136"/> <location filename="../ui/profilesdialog.ui" line="139"/>
<source>Default</source> <source>Default</source>
<translation>По умолчанию</translation> <translation>По умолчанию</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="143"/> <location filename="../ui/profilesdialog.ui" line="146"/>
<source>Browse...</source> <source>Browse...</source>
<translation>Открыть...</translation> <translation>Открыть...</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="152"/> <location filename="../ui/profilesdialog.ui" line="155"/>
<source>Arguments:</source> <source>Arguments:</source>
<translation>Аргументы:</translation> <translation>Аргументы:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="162"/> <location filename="../ui/profilesdialog.ui" line="165"/>
<source>Comments:</source> <source>Comments:</source>
<translation>Комментарии:</translation> <translation>Комментарии:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="179"/> <location filename="../ui/profilesdialog.ui" line="182"/>
<source>Directory:</source> <source>Directory:</source>
<translation>Директория:</translation> <translation>Директория:</translation>
</message> </message>
@ -797,22 +801,22 @@ Just press Continue button and follow the different steps until everything is do
<translation type="vanished">~/.ryzom/0</translation> <translation type="vanished">~/.ryzom/0</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="195"/> <location filename="../ui/profilesdialog.ui" line="198"/>
<source>Open</source> <source>Open</source>
<translation>Открыть</translation> <translation>Открыть</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="204"/> <location filename="../ui/profilesdialog.ui" line="207"/>
<source>Create shortcuts:</source> <source>Create shortcuts:</source>
<translation>Создать ярлыки:</translation> <translation>Создать ярлыки:</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="213"/> <location filename="../ui/profilesdialog.ui" line="216"/>
<source>Desktop</source> <source>Desktop</source>
<translation>Рабочий стол</translation> <translation>Рабочий стол</translation>
</message> </message>
<message> <message>
<location filename="../ui/profilesdialog.ui" line="220"/> <location filename="../ui/profilesdialog.ui" line="223"/>
<source>Start Menu</source> <source>Start Menu</source>
<translation>меню Пуск</translation> <translation>меню Пуск</translation>
</message> </message>
@ -820,116 +824,123 @@ Just press Continue button and follow the different steps until everything is do
<context> <context>
<name>QApplication</name> <name>QApplication</name>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Error</source> <source>Error</source>
<translation>Ошибка</translation> <translation>Ошибка</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="151"/> <location filename="../src/main.cpp" line="163"/>
<source>Unable to find ryzom_installer.ini</source> <source>Unable to find ryzom_installer.ini</source>
<translation>Невозможно найти ryzom_installer.ini</translation> <translation>Невозможно найти ryzom_installer.ini</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="119"/> <location filename="../src/main.cpp" line="123"/>
<source>Installation and launcher tool for Ryzom</source> <source>Installation and launcher tool for Ryzom</source>
<translation>Программа установки и запуска Ryzom</translation> <translation>Программа установки и запуска Ryzom</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="122"/> <location filename="../src/main.cpp" line="126"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation>Удалить</translation> <translation>Удалить</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="125"/> <location filename="../src/main.cpp" line="129"/>
<source>Silent mode</source> <source>Silent mode</source>
<translation>Фоновый режим (silent mode)</translation> <translation>Фоновый режим (silent mode)</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="128"/> <location filename="../src/main.cpp" line="132"/>
<source>Version</source> <source>Version</source>
<translation>Версия</translation> <translation>Версия</translation>
</message> </message>
<message> <message>
<location filename="../src/main.cpp" line="131"/> <location filename="../src/main.cpp" line="135"/>
<source>Install itself</source> <source>Install itself</source>
<translation>Установится</translation> <translation>Установится</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="322"/> <location filename="../src/filesextractor.cpp" line="324"/>
<location filename="../src/filesextractor.cpp" line="580"/> <location filename="../src/filesextractor.cpp" line="629"/>
<source>Unable to open %1</source> <source>Unable to open %1</source>
<translation>Невозможно открыть %1</translation> <translation>Невозможно открыть %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="437"/>
<source>Unable to open output file</source> <source>Unable to open output file</source>
<translation>Невозможно открыть выходной файл</translation> <translation type="vanished">Невозможно открыть выходной файл</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="446"/>
<source>Unable to write output file</source> <source>Unable to write output file</source>
<translation>Невозможно записать выходной файл</translation> <translation type="vanished">Невозможно записать выходной файл</translation>
</message>
<message>
<location filename="../src/filesextractor.cpp" line="471"/>
<source>Unable to open output file %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/filesextractor.cpp" line="494"/>
<source>Unable to write output file %1 (%2 bytes written but expecting %3 bytes)</source>
<translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="495"/> <location filename="../src/filesextractor.cpp" line="538"/>
<location filename="../src/filesextractor.cpp" line="503"/> <location filename="../src/filesextractor.cpp" line="546"/>
<source>7zip decoder doesn&apos;t support this archive</source> <source>7zip decoder doesn&apos;t support this archive</source>
<translation>Архиватор 7zip не поддерживает данный тип архива</translation> <translation>Архиватор 7zip не поддерживает данный тип архива</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="499"/> <location filename="../src/filesextractor.cpp" line="542"/>
<source>Unable to allocate memory</source> <source>Unable to allocate memory</source>
<translation>Невозможно выделить память</translation> <translation>Невозможно выделить память</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="507"/> <location filename="../src/filesextractor.cpp" line="550"/>
<source>File %1 is corrupted, unable to uncompress it</source> <source>File %1 is corrupted, unable to uncompress it</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="515"/> <location filename="../src/filesextractor.cpp" line="558"/>
<source>Error %1</source> <source>Error %1</source>
<translation>Ошибка %1</translation> <translation>Ошибка %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="542"/> <location filename="../src/filesextractor.cpp" line="587"/>
<source>Unable to create directory %1</source> <source>Unable to create directory %1</source>
<translation>Невозможно создать директорию %1</translation> <translation>Невозможно создать директорию %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="548"/> <location filename="../src/filesextractor.cpp" line="595"/>
<source>Unable to set permissions of %1</source> <source>Unable to set permissions of %1</source>
<translation>Невозможно назначить права объекта %1</translation> <translation>Невозможно назначить права объекта %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="663"/> <location filename="../src/filesextractor.cpp" line="718"/>
<source>disk full</source> <source>disk full</source>
<translation>диск переполнен</translation> <translation>диск переполнен</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="667"/> <location filename="../src/filesextractor.cpp" line="724"/>
<source>unable to write %1</source> <source>unable to write %1</source>
<translation>невозможно записать %1</translation> <translation>невозможно записать %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="671"/> <location filename="../src/filesextractor.cpp" line="730"/>
<source>unable to read %1</source> <source>unable to read %1</source>
<translation>невозможно прочитать %1</translation> <translation>невозможно прочитать %1</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="675"/> <location filename="../src/filesextractor.cpp" line="736"/>
<source>failed (%1)</source> <source>failed (%1)</source>
<translation>неуспешно (%1)</translation> <translation>неуспешно (%1)</translation>
</message> </message>
<message> <message>
<location filename="../src/filesextractor.cpp" line="678"/> <location filename="../src/filesextractor.cpp" line="739"/>
<source>Unable to unpack %1 to %2: %3</source> <source>Unable to unpack %1 to %2: %3</source>
<translation>Невозможно разархивировать %1 в %2: %3</translation> <translation>Невозможно разархивировать %1 в %2: %3</translation>
</message> </message>
<message> <message>
<location filename="../src/filescopier.cpp" line="189"/>
<source>Unable to copy file %1</source> <source>Unable to copy file %1</source>
<translation>Невозможно скопировать файл %1</translation> <translation type="vanished">Невозможно скопировать файл %1</translation>
</message> </message>
<message> <message>
<location filename="../src/profile.cpp" line="58"/> <location filename="../src/profile.cpp" line="58"/>
@ -941,6 +952,11 @@ Just press Continue button and follow the different steps until everything is do
<source>Profile name %1 is using invalid character %2 at position %3</source> <source>Profile name %1 is using invalid character %2 at position %3</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/filescopier.cpp" line="179"/>
<source>Unable to copy file %1 to %2</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>QObject</name> <name>QObject</name>

@ -154,13 +154,13 @@ void CGraphPlugin::refreshPrimitives()
// ok, we find a good node // ok, we find a good node
try try
{ {
IPrimitive *rootNode = missionTreeRoot; IPrimitive *rootNode = missionTreeRoot;
while (rootNode->getParent()) while (rootNode->getParent())
rootNode = rootNode->getParent(); rootNode = rootNode->getParent();
string fileName = _PluginAccess->getRootFileName(rootNode); string fileName = _PluginAccess->getRootFileName(rootNode);
CMissionCompiler mc; CMissionCompiler mc;
mc.compileMission(missionTreeRoot, NLMISC::CFile::getFilename(fileName)); mc.compileMission(missionTreeRoot, NLMISC::CFile::getFilename(fileName));
TMissionDataPtr md = mc.getMission(0); TMissionDataPtr md = mc.getMission(0);
@ -189,7 +189,7 @@ void CGraphPlugin::refreshPrimitives()
AfxMessageBox(_T("BEWARE: the image couldn't be loaded.")); AfxMessageBox(_T("BEWARE: the image couldn't be loaded."));
} }
while (missionTreeRoot->getParent()!=NULL) while (missionTreeRoot->getParent()!=NULL)
{ {
missionTreeRoot=missionTreeRoot->getParent(); missionTreeRoot=missionTreeRoot->getParent();
} }
@ -201,10 +201,10 @@ void CGraphPlugin::refreshPrimitives()
if (e.Primitive != NULL) if (e.Primitive != NULL)
{ {
string primName; string primName;
vectSel.push_back(e.Primitive); vectSel.push_back(e.Primitive);
e.Primitive->getPropertyByName("name", primName); e.Primitive->getPropertyByName("name", primName);
err = toString("%s : %s", primName.c_str(), e.Why.c_str()); err = toString("%s : %s", primName.c_str(), e.Why.c_str());
} }
AfxMessageBox(utf8ToTStr(err)); AfxMessageBox(utf8ToTStr(err));
@ -216,7 +216,7 @@ void CGraphPlugin::refreshPrimitives()
} }
else else
{ {
refreshMachine(); refreshMachine();
} }
if(vectSel.size()>0) if(vectSel.size()>0)
@ -244,8 +244,8 @@ void CGraphPlugin::refreshMachine()
if ((predFolder(missionTreeRoot))|| if ((predFolder(missionTreeRoot))||
((missionTreeRoot=getPrimitiveParent((*first),predFolder))!=NULL)) ((missionTreeRoot=getPrimitiveParent((*first),predFolder))!=NULL))
{ {
string dot = generateDotScript(missionTreeRoot); string dot = generateDotScript(missionTreeRoot);
string tmpPath = string(::getenv("TEMP")); string tmpPath = string(::getenv("TEMP"));
@ -270,17 +270,17 @@ void CGraphPlugin::refreshMachine()
if(!createBitmap(tmpPath)) if(!createBitmap(tmpPath))
AfxMessageBox(_T("BEWARE: the image couldn't be loaded.")); AfxMessageBox(_T("BEWARE: the image couldn't be loaded."));
} }
while (missionTreeRoot->getParent()!=NULL) while (missionTreeRoot->getParent()!=NULL)
{ {
missionTreeRoot=missionTreeRoot->getParent(); missionTreeRoot=missionTreeRoot->getParent();
} }
_rootFileName=_PluginAccess->getRootFileName(missionTreeRoot); _rootFileName=_PluginAccess->getRootFileName(missionTreeRoot);
} }
else else
{ {
list<IPrimitive*>::const_iterator first(selection.begin()), last(selection.end()),curIte; list<IPrimitive*>::const_iterator first(selection.begin()), last(selection.end()),curIte;
IPrimitive* missionTreeRoot=(*first); IPrimitive* missionTreeRoot=(*first);
@ -288,8 +288,8 @@ void CGraphPlugin::refreshMachine()
if ((predManager(missionTreeRoot))|| if ((predManager(missionTreeRoot))||
((missionTreeRoot=getPrimitiveParent((*first),predManager))!=NULL)) ((missionTreeRoot=getPrimitiveParent((*first),predManager))!=NULL))
{ {
string dot = generateDotScript(missionTreeRoot); string dot = generateDotScript(missionTreeRoot);
string tmpPath = string(::getenv("TEMP")); string tmpPath = string(::getenv("TEMP"));
@ -315,7 +315,7 @@ void CGraphPlugin::refreshMachine()
AfxMessageBox(_T("BEWARE: the image couldn't be loaded.")); AfxMessageBox(_T("BEWARE: the image couldn't be loaded."));
} }
while (missionTreeRoot->getParent()!=NULL) while (missionTreeRoot->getParent()!=NULL)
{ {
missionTreeRoot=missionTreeRoot->getParent(); missionTreeRoot=missionTreeRoot->getParent();
} }
@ -327,10 +327,10 @@ void CGraphPlugin::refreshMachine()
} }
} }
} }
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
@ -342,7 +342,7 @@ string CGraphPlugin::spaceTo_(string strInput)
explode(strInput,string(" "),strTmp); explode(strInput,string(" "),strTmp);
if (strTmp.size()>1) if (strTmp.size()>1)
{ {
for(uint i=0;i<strTmp.size();i++) for(uint i=0;i<strTmp.size();i++)
{ {
vector<string> strTmpTmp; vector<string> strTmpTmp;
@ -394,10 +394,10 @@ string CGraphPlugin::createNode(IPrimitive* managerNode,string strPredicate,uin
ret += NL ; ret += NL ;
ret += "}" ; ret += "}" ;
ret += NL; ret += NL;
} }
numClusters+=resSet.size(); numClusters+=resSet.size();
return ret; return ret;
} }
@ -433,13 +433,13 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
ret += parseStateMachine(resSet[i],spaceTo_(strName),string(""),string("_")+spaceTo_(strName)); ret += parseStateMachine(resSet[i],spaceTo_(strName),string(""),string("_")+spaceTo_(strName));
ret += "}" ; ret += "}" ;
ret += NL; ret += NL;
} }
for (uint i=0; i<resSet.size(); ++i) for (uint i=0; i<resSet.size(); ++i)
{ {
string strName; string strName;
resSet[i]->getPropertyByName("name",strName); resSet[i]->getPropertyByName("name",strName);
TPrimitiveClassPredicate predJump("npc_event_handler_action"); TPrimitiveClassPredicate predJump("npc_event_handler_action");
TPrimitiveSet resJump; TPrimitiveSet resJump;
offsprings.buildSet(resSet[i],predJump,resJump); offsprings.buildSet(resSet[i],predJump,resJump);
@ -460,7 +460,7 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
if(primTail) if(primTail)
primTail->getPropertyByName("name", labelTail); primTail->getPropertyByName("name", labelTail);
} }
vector<string> *jumpDest; vector<string> *jumpDest;
resJump[j]->getPropertyByName("action",strAction); resJump[j]->getPropertyByName("action",strAction);
if (strAction.compare(string("begin_state"))==0) if (strAction.compare(string("begin_state"))==0)
@ -471,7 +471,7 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
ret +=spaceTo_(jumpDest->at(0)); ret +=spaceTo_(jumpDest->at(0));
ret +="[label="; ret +="[label=";
ret +=spaceTo_(labelTail); ret +=spaceTo_(labelTail);
ret +="]"; ret +="]";
ret += ";" ; ret += ";" ;
ret += NL; ret += NL;
} }
@ -479,7 +479,7 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
{ {
vector<string>* jumpDest; vector<string>* jumpDest;
string strTmpTmpName; string strTmpTmpName;
resJump[j]->getPropertyByName("parameters",jumpDest); resJump[j]->getPropertyByName("parameters",jumpDest);
resJump[j]->getPropertyByName("name",strTmpTmpName); resJump[j]->getPropertyByName("name",strTmpTmpName);
@ -496,13 +496,13 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
ret +="_"; ret +="_";
ret += spaceTo_(strName) ; ret += spaceTo_(strName) ;
ret +="->"; ret +="->";
vector<string> resJump; vector<string> resJump;
explode(jumpDest->at(k)," ",resJump); explode(jumpDest->at(k)," ",resJump);
ret +=resJump[1]; ret +=resJump[1];
ret+= ";"; ret+= ";";
ret+=NL; ret+=NL;
} }
}*/ }*/
if (strAction.compare(string("punctual_state"))==0) if (strAction.compare(string("punctual_state"))==0)
@ -513,7 +513,7 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
ret +=spaceTo_(jumpDest->at(0)); ret +=spaceTo_(jumpDest->at(0));
ret +="[label="; ret +="[label=";
ret +=spaceTo_(labelTail); ret +=spaceTo_(labelTail);
ret +="]"; ret +="]";
ret += ";" ; ret += ";" ;
ret += NL; ret += NL;
ret +=spaceTo_(jumpDest->at(0)); ret +=spaceTo_(jumpDest->at(0));
@ -521,12 +521,12 @@ string CGraphPlugin::createParsedNode(IPrimitive* managerNode,string strPredica
ret += strName ; ret += strName ;
ret +="[label="; ret +="[label=";
ret +=spaceTo_(labelTail); ret +=spaceTo_(labelTail);
ret +="]"; ret +="]";
ret += ";" ; ret += ";" ;
ret += NL; ret += NL;
} }
} }
} }
numClusters+=resSet.size(); numClusters+=resSet.size();
return ret; return ret;
@ -573,17 +573,17 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
uint numChild=currentNode->getNumChildren(); uint numChild=currentNode->getNumChildren();
for(uint i=0;i<numChild;i++) for(uint i=0;i<numChild;i++)
{ {
IPrimitive* child; IPrimitive* child;
currentNode->getChild(child,i); currentNode->getChild(child,i);
child->getPropertyByName("class",strClassName); child->getPropertyByName("class",strClassName);
child->getPropertyByName("name",strName); child->getPropertyByName("name",strName);
child->getPropertyByName("action",strAction); child->getPropertyByName("action",strAction);
if (strClassName.compare(string("npc_group"))==0) if (strClassName.compare(string("npc_group"))==0)
{ {
child->getPropertyByName("name",strName); child->getPropertyByName("name",strName);
ret+=spaceTo_(strName); ret+=spaceTo_(strName);
ret+=tag; ret+=tag;
ret += " [URL=\""+buildPrimPath(child)+"\"];"+NL; ret += " [URL=\""+buildPrimPath(child)+"\"];"+NL;
@ -670,7 +670,7 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
ret+=tag; ret+=tag;
first=true; first=true;
} }
} }
ret+="}"; ret+="}";
ret+='"'; ret+='"';
@ -704,7 +704,7 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
&& (strClassName.compare("random_select_state")==0)) && (strClassName.compare("random_select_state")==0))
{ {
vector<string>* jumpDest; vector<string>* jumpDest;
child->getPropertyByName("parameters",jumpDest); child->getPropertyByName("parameters",jumpDest);
for(uint k=0;k<jumpDest->size();k++) for(uint k=0;k<jumpDest->size();k++)
{ {
ret+=spaceTo_(strName); ret+=spaceTo_(strName);
@ -712,10 +712,10 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
ret+="->"; ret+="->";
ret +=spaceTo_(jumpDest->at(k)); ret +=spaceTo_(jumpDest->at(k));
ret+= ";"; ret+= ";";
ret+=NL; ret+=NL;
} }
} }
} }
ret+=NL; ret+=NL;
} }
@ -745,7 +745,7 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
vector<string>* jumpDest; vector<string>* jumpDest;
bool first=true; bool first=true;
child->getPropertyByName("parameters",jumpDest); child->getPropertyByName("parameters",jumpDest);
ret += spaceTo_(strName) ; ret += spaceTo_(strName) ;
ret +="_"; ret +="_";
ret += emiterNode; ret += emiterNode;
@ -769,7 +769,7 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
ret +=resJump[1]; ret +=resJump[1];
ret+= ";"; ret+= ";";
ret+=NL; ret+=NL;
} }
ret+=emiterNode; ret+=emiterNode;
ret += "->"; ret += "->";
@ -782,11 +782,11 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
else else
{ {
ret+=parseStateMachine(child,emiterNode,tailLabel,tag); ret+=parseStateMachine(child,emiterNode,tailLabel,tag);
} }
} }
currentNode->getPropertyByName("class",strClassName); currentNode->getPropertyByName("class",strClassName);
currentNode->getPropertyByName("name",strName); currentNode->getPropertyByName("name",strName);
currentNode->getPropertyByName("action",strAction); currentNode->getPropertyByName("action",strAction);
@ -816,7 +816,7 @@ string CGraphPlugin::parseStateMachine(NLLIGO::IPrimitive* currentNode,string em
ret+=NL; ret+=NL;
} }
return ret; return ret;
} }
bool CGraphPlugin::createBitmap (const string &tmpPath) bool CGraphPlugin::createBitmap (const string &tmpPath)
@ -831,10 +831,10 @@ bool CGraphPlugin::createBitmap (const string &tmpPath)
} }
WORD retour; WORD retour;
if(retour=bitmap.load(pngLocation)) if(retour=bitmap.load(pngLocation))
{ {
HBITMAP &_Hbmp=GraphDlg->_Hbmp; HBITMAP &_Hbmp=GraphDlg->_Hbmp;
HBITMAP &_Hdib=GraphDlg->_Hdib; HBITMAP &_Hdib=GraphDlg->_Hdib;
@ -842,7 +842,7 @@ bool CGraphPlugin::createBitmap (const string &tmpPath)
BITMAPINFO &_DibBitmapInfo=GraphDlg->_DibBitmapInfo;; BITMAPINFO &_DibBitmapInfo=GraphDlg->_DibBitmapInfo;;
uint8* &_DibBits=GraphDlg->_DibBits; uint8* &_DibBits=GraphDlg->_DibBits;
_DibBitmapInfo.bmiHeader.biSize = sizeof(BITMAPINFO); _DibBitmapInfo.bmiHeader.biSize = sizeof(BITMAPINFO);
_DibBitmapInfo.bmiHeader.biWidth = bitmap.getWidth(); _DibBitmapInfo.bmiHeader.biWidth = bitmap.getWidth();
_DibBitmapInfo.bmiHeader.biHeight = bitmap.getHeight(); _DibBitmapInfo.bmiHeader.biHeight = bitmap.getHeight();
@ -857,8 +857,8 @@ bool CGraphPlugin::createBitmap (const string &tmpPath)
// Create the bitmap // Create the bitmap
HWND desktop = ::GetDesktopWindow(); HWND desktop = ::GetDesktopWindow();
HDC dc = ::GetDC (desktop); HDC dc = ::GetDC (desktop);
nlverify(_Hdib = CreateDIBSection(dc, &_DibBitmapInfo, DIB_RGB_COLORS, nlverify(_Hdib = CreateDIBSection(dc, &_DibBitmapInfo, DIB_RGB_COLORS,
(void**)&_DibBits, NULL, 0)); (void**)&_DibBits, NULL, 0));
@ -920,7 +920,6 @@ void CGraphPlugin::unsetDlgGraph()
_PluginActive=false; _PluginActive=false;
} }
void CGraphPlugin::doSelection(const string& primPath) void CGraphPlugin::doSelection(const string& primPath)
{ {
IPrimitive *rootNode; IPrimitive *rootNode;
@ -930,7 +929,7 @@ void CGraphPlugin::doSelection(const string& primPath)
if(_PluginAccess->getCurrentSelection().size()>0) if(_PluginAccess->getCurrentSelection().size()>0)
{ {
try try
{ {
rootNode=(IPrimitive*)_PluginAccess->getRootNode(_rootFileName); rootNode=(IPrimitive*)_PluginAccess->getRootNode(_rootFileName);

@ -89,8 +89,10 @@ MissionCompilerMainWindow::MissionCompilerMainWindow(QWidget *parent) :
settings->endGroup(); settings->endGroup();
NLLIGO::Register(); NLLIGO::Register();
// TODO try/catch exception. Crashes if path invalid. // TODO try/catch exception. Crashes if path invalid.
try{ try
{
m_ligoConfig.readPrimitiveClass(NLMISC::CPath::lookup("world_editor_classes.xml").c_str(), false); m_ligoConfig.readPrimitiveClass(NLMISC::CPath::lookup("world_editor_classes.xml").c_str(), false);
} }
catch(const NLMISC::Exception &e) catch(const NLMISC::Exception &e)

Loading…
Cancel
Save