mirror of
https://git.code.sf.net/p/projectlibre/code
synced 2024-11-01 03:21:46 +01:00
New translations added. New dialog to configure Locales. Bug fixes.
This commit is contained in:
parent
9c4aea639d
commit
18695ec399
50 changed files with 18319 additions and 5470 deletions
|
@ -27,19 +27,19 @@ macapp=ProjectLibre.app
|
|||
wixbuild=projectlibre_wix
|
||||
|
||||
|
||||
version_name=1.9.2
|
||||
version=1.9.2
|
||||
version_name=1.9.3
|
||||
version=1.9.3
|
||||
|
||||
#windows
|
||||
numericVersion3=1.9.2
|
||||
numericVersion3=1.9.3
|
||||
|
||||
#mac
|
||||
numericVersion4=1.9.2.0
|
||||
numericVersion4=1.9.3.0
|
||||
|
||||
#Linux
|
||||
rpm_version=1.9.2
|
||||
rpm_version=1.9.3
|
||||
rpm_revision=1
|
||||
deb_version=1.9.2
|
||||
deb_version=1.9.3
|
||||
deb_revision=1
|
||||
|
||||
#rpm_builds=redhat,suse,mageia
|
||||
|
|
BIN
projectlibre_build/src/projectlibre-1.9.1.tar.gz
Normal file
BIN
projectlibre_build/src/projectlibre-1.9.1.tar.gz
Normal file
Binary file not shown.
BIN
projectlibre_contrib/projectlibre-contrib.jar
Normal file
BIN
projectlibre_contrib/projectlibre-contrib.jar
Normal file
Binary file not shown.
BIN
projectlibre_contrib/projectlibre-reports.jar
Normal file
BIN
projectlibre_contrib/projectlibre-reports.jar
Normal file
Binary file not shown.
BIN
projectlibre_contrib/projectlibre-script.jar
Normal file
BIN
projectlibre_contrib/projectlibre-script.jar
Normal file
Binary file not shown.
BIN
projectlibre_contrib/tmp/projectlibre-contrib-tmp.jar
Normal file
BIN
projectlibre_contrib/tmp/projectlibre-contrib-tmp.jar
Normal file
Binary file not shown.
BIN
projectlibre_contrib/tmp/projectlibre-reports-tmp.jar
Normal file
BIN
projectlibre_contrib/tmp/projectlibre-reports-tmp.jar
Normal file
Binary file not shown.
BIN
projectlibre_contrib/tmp/projectlibre-script-tmp.jar
Normal file
BIN
projectlibre_contrib/tmp/projectlibre-script-tmp.jar
Normal file
Binary file not shown.
|
@ -29,5 +29,6 @@
|
|||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/l2fprod-common-totd.jar"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/nachocalendar.jar"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/exchange/jaxb-api.jar"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
|
|
|
@ -1,7 +1,13 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.release=disabled
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
||||
|
|
|
@ -95,4 +95,6 @@ public class Settings {
|
|||
public static boolean SHOW_HELP_LINKS = true;
|
||||
public static String VERSION_TYPE_STANDALONE="standalone";
|
||||
public static String VERSION_TYPE_SERVER="server";
|
||||
|
||||
public static String LANGUAGES = "default"; //defaults are set in configuration.xml
|
||||
}
|
||||
|
|
|
@ -90,6 +90,13 @@
|
|||
<name>com.projectlibre1.util.SpecialDateFormat.DATE_FORMAT</name>
|
||||
<value>EEE MM/dd/yy H:mm</value>
|
||||
</String>
|
||||
<String>
|
||||
<name>
|
||||
com.projectlibre1.configuration.Settings.LANGUAGES
|
||||
</name>
|
||||
<value>default;ar;cs;da;de;el;en;es;fa;fi;fr;gl;hi;it;ja;kh;km;ko;nl;pt;ru;sk;sv;ta;th;tr;uk;ur;vi;zh</value>
|
||||
</String>
|
||||
|
||||
</constants>
|
||||
|
||||
|
||||
|
|
|
@ -57,9 +57,19 @@ package com.projectlibre1.preference;
|
|||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.net.URLClassLoader;
|
||||
import java.util.Locale;
|
||||
import java.util.Properties;
|
||||
import java.util.PropertyResourceBundle;
|
||||
import java.util.ResourceBundle;
|
||||
import java.util.StringTokenizer;
|
||||
import java.util.prefs.Preferences;
|
||||
|
||||
import com.projectlibre1.session.FileHelper;
|
||||
|
||||
public class ConfigurationFile {
|
||||
|
||||
|
@ -86,6 +96,12 @@ public class ConfigurationFile {
|
|||
private static final String OPENPROJ_CONF_FILE="projectlibre.conf";
|
||||
private static Properties confProps;
|
||||
public static String getProperty(String key){
|
||||
if ("locale".equals(key)) {
|
||||
String locale=Preferences.userNodeForPackage(ConfigurationFile.class).get("locale","default");
|
||||
if (!"default".equals(locale)) {
|
||||
return locale;
|
||||
}
|
||||
}
|
||||
if (confProps==null){
|
||||
File confDir=getConfDir();
|
||||
if (confDir==null) return null;
|
||||
|
@ -106,15 +122,20 @@ public class ConfigurationFile {
|
|||
if (locale==null){
|
||||
String l=getProperty("locale");
|
||||
if (l==null) locale=Locale.getDefault();
|
||||
else{
|
||||
else locale=getLocale(l);
|
||||
}
|
||||
return locale;
|
||||
}
|
||||
public static Locale getLocale(String code){
|
||||
Locale defaultLocale=Locale.getDefault();
|
||||
String language=null;
|
||||
String country=null;
|
||||
String variant=null;
|
||||
StringTokenizer st=new StringTokenizer(l,"_-");
|
||||
if (!st.hasMoreTokens()) locale=Locale.getDefault();
|
||||
StringTokenizer st=new StringTokenizer(code,"_-");
|
||||
if (!st.hasMoreTokens()) locale=defaultLocale;
|
||||
else{
|
||||
language=st.nextToken();
|
||||
if (!st.hasMoreTokens()) locale=new Locale(language);
|
||||
if (!st.hasMoreTokens()) locale=new Locale(language,defaultLocale.getCountry());
|
||||
else{
|
||||
country=st.nextToken();
|
||||
if (!st.hasMoreTokens()) locale=new Locale(language,country);
|
||||
|
@ -126,12 +147,30 @@ public class ConfigurationFile {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
return locale;
|
||||
}
|
||||
public static String[] getLocaleCodes(String code){
|
||||
Locale defaultLocale=Locale.getDefault();
|
||||
String language=null;
|
||||
String country=null;
|
||||
String variant=null;
|
||||
StringTokenizer st=new StringTokenizer(code,"_-");
|
||||
if (!st.hasMoreTokens()) locale=defaultLocale;
|
||||
else{
|
||||
language=st.nextToken();
|
||||
if (!st.hasMoreTokens()) locale=new Locale(language,defaultLocale.getCountry());
|
||||
else{
|
||||
country=st.nextToken();
|
||||
if (!st.hasMoreTokens()) locale=new Locale(language,country);
|
||||
else{
|
||||
variant=st.nextToken();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
return new String[] {language, country, variant};
|
||||
}
|
||||
|
||||
private static final String OPENPROJ_RUN_CONF_FILE="run.conf";
|
||||
private static Properties runProps;
|
||||
|
@ -151,5 +190,64 @@ public class ConfigurationFile {
|
|||
return runProps.getProperty(key);
|
||||
}
|
||||
|
||||
public static File getGeneratedDirectory(String externalDirectory) {
|
||||
File directory=new File(externalDirectory,"import");
|
||||
return directory.isDirectory()?directory:null;
|
||||
|
||||
// File directory=null;
|
||||
// Preferences pref=Preferences.userNodeForPackage(ConfigurationFile.class);
|
||||
// if (pref.getBoolean("useExternalLocales",false)) {
|
||||
// String dir=pref.get("externalLocalesDirectory","");
|
||||
// directory=new File(dir,"generated");
|
||||
// if (!directory.isDirectory())
|
||||
// return null;
|
||||
// }
|
||||
// return directory;
|
||||
}
|
||||
|
||||
public static File getExportDirectory(String externalDirectory) {
|
||||
File directory=new File(externalDirectory,"export");
|
||||
return directory.isDirectory()?directory:null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static ResourceBundle getDirectoryBundle(String name) {
|
||||
File directory=null;
|
||||
Preferences pref=Preferences.userNodeForPackage(ConfigurationFile.class);
|
||||
if (pref.getBoolean("useExternalLocales",false)) {
|
||||
String dir=pref.get("externalLocalesDirectory","");
|
||||
directory=new File(dir,"import");
|
||||
if (!directory.isDirectory())
|
||||
return null;
|
||||
}
|
||||
// if (directory==null)
|
||||
// directory=getConfDir();
|
||||
|
||||
try {
|
||||
URL[] urls={directory.toURI().toURL()};
|
||||
ClassLoader cl=new URLClassLoader(urls);
|
||||
ResourceBundle rb=ResourceBundle.getBundle(name, Locale.getDefault(), cl);
|
||||
return rb;
|
||||
} catch (MalformedURLException e1) {
|
||||
e1.printStackTrace();
|
||||
}
|
||||
|
||||
// Locale locale=Locale.getDefault();
|
||||
// try {
|
||||
//// FileReader in = new FileReader(dir+File.separator+"client_"+locale+".properties");
|
||||
// FileInputStream in = new FileInputStream(dir+File.separator+name+"_"+locale+".properties");
|
||||
// return new PropertyResourceBundle(in);
|
||||
// } catch (FileNotFoundException e) {
|
||||
// // TODO Auto-generated catch block
|
||||
// e.printStackTrace();
|
||||
// } catch (IOException e) {
|
||||
// // TODO Auto-generated catch block
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -60,6 +60,7 @@ import java.io.DataInputStream;
|
|||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.InputStream;
|
||||
import java.util.Locale;
|
||||
|
||||
import com.projectlibre1.preference.ConfigurationFile;
|
||||
|
||||
|
@ -82,13 +83,14 @@ public class DirectoryClassLoader extends ClassLoader{
|
|||
protected Class findClass(String name) throws ClassNotFoundException{
|
||||
if (directory==null) throw new ClassNotFoundException(name);
|
||||
try {
|
||||
File file = new File(directory, name);
|
||||
File file = new File(directory, name+".properties");
|
||||
DataInputStream in = new DataInputStream(new FileInputStream(file));
|
||||
byte b[] = new byte[(int)file.length()];
|
||||
in.readFully(b);
|
||||
in.close();
|
||||
return defineClass(name, b, 0, b.length);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
throw new ClassNotFoundException(name);
|
||||
}
|
||||
|
||||
|
@ -96,7 +98,7 @@ public class DirectoryClassLoader extends ClassLoader{
|
|||
public InputStream getResourceAsStream(String name) { //used by resourceBundle
|
||||
if (directory==null) return null;
|
||||
try {
|
||||
File file = new File(directory, name);
|
||||
File file = new File(directory, name+"_"+Locale.getDefault()+".properties");
|
||||
DataInputStream in = new DataInputStream(new FileInputStream(file));
|
||||
return in;
|
||||
} catch (Exception e) {
|
||||
|
|
|
@ -56,11 +56,8 @@
|
|||
package com.projectlibre1.strings;
|
||||
|
||||
import java.text.MessageFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Enumeration;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.ListIterator;
|
||||
import java.util.Locale;
|
||||
import java.util.MissingResourceException;
|
||||
import java.util.Properties;
|
||||
|
@ -68,8 +65,7 @@ import java.util.ResourceBundle;
|
|||
import java.util.concurrent.locks.Lock;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
|
||||
import com.projectlibre1.preference.ConfigurationFile;
|
||||
import com.projectlibre1.util.ClassLoaderUtils;
|
||||
import com.projectlibre1.util.Environment;
|
||||
|
||||
|
@ -99,7 +95,6 @@ public class Messages {
|
|||
}
|
||||
|
||||
static LinkedList<ResourceBundle> bundles = null;
|
||||
static DirectoryClassLoader directoryClassLoader=new DirectoryClassLoader();
|
||||
static Lock lock=new ReentrantLock();
|
||||
|
||||
private static ResourceBundle[] bundleArray = null;
|
||||
|
@ -114,32 +109,39 @@ public class Messages {
|
|||
if (bundles==null){ //if it hasn't been initialized by an other thread
|
||||
String bundleNames[] = getMetaString("ResourceBundles").split(";");
|
||||
String directoryBundleNames[] = getMetaString("DirectoryResourceBundles").split(";");
|
||||
if (directoryClassLoader.isValid()){
|
||||
//foundBundles=new ArrayList<String>(bundleNames.length+directoryBundleNames.length);
|
||||
|
||||
for (int i =0; i < directoryBundleNames.length;i++) {
|
||||
try {
|
||||
ResourceBundle bundle=ResourceBundle.getBundle(directoryBundleNames[i],Locale.getDefault(),directoryClassLoader);
|
||||
ResourceBundle bundle=ConfigurationFile.getDirectoryBundle(directoryBundleNames[i]);
|
||||
if (bundle==null)
|
||||
continue;
|
||||
buns.add(bundle);
|
||||
foundBundles.add("com.projectlibre1.strings."+directoryBundleNames[i]);
|
||||
}catch (Exception e) {}
|
||||
}catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}else buns=new LinkedList<ResourceBundle>();
|
||||
}
|
||||
|
||||
for (int i =bundleNames.length-1; i >=0; i--) { // reverse order since the later ones should be searched first
|
||||
String bname=bundleNames[i];
|
||||
|
||||
//find right position to insert in bundles
|
||||
int j=0;
|
||||
|
||||
int pos=0;
|
||||
boolean found=false;
|
||||
for (String b : foundBundles){
|
||||
if (bname.equals(b))
|
||||
if (bname.equals(b)) {
|
||||
found=true;
|
||||
break;
|
||||
}
|
||||
pos++;
|
||||
}
|
||||
if (!found) {
|
||||
buns.add(pos,ResourceBundle.getBundle(bname,Locale.getDefault(),ClassLoaderUtils.getLocalClassLoader()/*Messages.class.getClassLoader()*/));
|
||||
foundBundles.add(pos,bname);
|
||||
}
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
bundles = buns;
|
||||
lock.unlock();
|
||||
|
|
|
@ -1229,3 +1229,23 @@ T_VIEW=View
|
|||
|
||||
Message.saveError=An error occured while saving.
|
||||
Message.saveErrorTmpFile=An error occured while saving. The new file has been saved as:
|
||||
|
||||
|
||||
Message.localeChange=Locale change will take effect at restart
|
||||
Message.badLocaleDirectory=Locale directory is invalid
|
||||
Text.Language=Language:
|
||||
Text.Locales=Locales:
|
||||
Text.Country=Country:
|
||||
Text.DefaultLocale=default
|
||||
Text.ExternalLocale=Custom locales
|
||||
Text.ExternalLocaleUse=Use custom locales
|
||||
Text.ExternalLocaleDirectory=Locale directory:
|
||||
Text.ExternalLocaleDirectorySet=Set
|
||||
Text.ExternalLocaleDirectoryUpdate=Import
|
||||
Text.ExternalLocaleDirectoryExport=Export
|
||||
LocaleDialog.Language=Locale:
|
||||
LocaleDialog.FileStatusOk=OK
|
||||
LocaleDialog.FileStatusFormatError=Format error
|
||||
LocaleDialog.FileStatusMissing=Missing file
|
||||
|
||||
|
||||
|
|
1236
projectlibre_core/src/com/projectlibre1/strings/client_da.properties
Normal file
1236
projectlibre_core/src/com/projectlibre1/strings/client_da.properties
Normal file
File diff suppressed because it is too large
Load diff
1254
projectlibre_core/src/com/projectlibre1/strings/client_el.properties
Normal file
1254
projectlibre_core/src/com/projectlibre1/strings/client_el.properties
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1044,7 +1044,7 @@ Text.modifiedInParentheses=(modifi
|
|||
Text.thousandsAbbreviation=K
|
||||
Text.millionsAbbreviation=M
|
||||
Text.newServerProject=Projet de serveur
|
||||
Text.openProject=Projet ouvert
|
||||
Text.openProject=Ouvrir le projet
|
||||
Text.predecessor=prédécesseur
|
||||
# {0} is the name of the thing to rename
|
||||
Text.rename.mf=Renommer {0}
|
||||
|
@ -1234,3 +1234,7 @@ T_CANCEL=Annuler
|
|||
T_SAVE=Sauvegarder
|
||||
T_REFRESH=Rafra\u00eechir
|
||||
T_VIEW=Vue
|
||||
|
||||
|
||||
Message.languageChange=Language change will take effect at restart\nApply change?
|
||||
|
||||
|
|
|
@ -71,6 +71,10 @@
|
|||
# Some strings contain spaces at the end. Be careful to conserve them
|
||||
# Strings with colons at the end should retain the colons at the end
|
||||
|
||||
Legend:
|
||||
Correction proposed
|
||||
General suggestion
|
||||
Some of the following denomination are not present in Project Libre. Maybe they are present in the cloud version
|
||||
|
||||
# The following are standard Project Management abbreviations. it is possible that the English abbreviation is used in some languages
|
||||
# http://en.wikipedia.org/wiki/Earned_value_management - see translations of this page for help
|
||||
|
@ -81,30 +85,29 @@
|
|||
#CPI = Cost Peformance Index
|
||||
#CSI = Cost Schedule Index
|
||||
#CV = Cost Variance
|
||||
#CV = Cost Variance Percent
|
||||
#CV Percentage = Cost Variance Percent
|
||||
#EAC = Estimate at Complete
|
||||
#SPI = Schedule Peformance Index
|
||||
#SV = Schedule Variance
|
||||
#SV = Schedule Variance Percent
|
||||
#SV Percentage = Schedule Variance Percent
|
||||
#TCPI = To Complete Performance Index
|
||||
#VAC = Value at Completion
|
||||
#VAC = Variance at Completion
|
||||
#WBS = Work Breakdown Structure
|
||||
#RBS = Resource Breakdown Structure
|
||||
|
||||
|
||||
|
||||
|
||||
AboutDialog.About=About
|
||||
AboutDialog.copyright=Copyright 2012-2020 ProjectLibre Inc. Tutti i diritti riservati.
|
||||
AccessControlPolicy.PUBLIC=Tutte le risorse (eccetto clienti/partner)
|
||||
AccessControlPolicy.RESTRICTED=Based on Project Role in resources view
|
||||
|
||||
AccrualType.End=Fine
|
||||
AccrualType.Prorated=Prorated
|
||||
AccrualType.Start=Inizia
|
||||
AccrualType.Start=Inizio
|
||||
AssignmentDialog.ShowingAllResources=Mostra tutte le risorse
|
||||
AssignmentDialog.ShowingOnlyResourcesOnTheProjectTeam=Mostra solo le risorse del team di progetto
|
||||
AssignmentDialog.none=(vuoto)
|
||||
Bar.assignment=assignment
|
||||
Bar.assignment=assignment Assegnazione
|
||||
Bar.baseline10=baseline10
|
||||
Bar.baseline1=baseline1
|
||||
Bar.baseline2=baseline2
|
||||
|
@ -116,29 +119,29 @@ Bar.baseline7=baseline7
|
|||
Bar.baseline8=baseline8
|
||||
Bar.baseline9=baseline9
|
||||
Bar.baseline=baseline
|
||||
Bar.critical=critica
|
||||
Bar.critical=Attività critiche
|
||||
Bar.deadline=scadenza
|
||||
Bar.external=esterna
|
||||
Bar.milestone=milestone
|
||||
Bar.subproject=sottoprogetto
|
||||
Bar.summary=sommario
|
||||
Bar.task=task
|
||||
Bar.timesheet=Scheda dei task
|
||||
Bar.summary=Attività di riepilogo
|
||||
Bar.task=Attività
|
||||
Bar.timesheet=Informazioni attività
|
||||
Bar.totalSlack=Slittamento complessivo
|
||||
BarPanel.Shape=Forma:
|
||||
BaselineDialog.Baseline=Baseline:
|
||||
BaselineDialog.For=Per:
|
||||
BookingType.Committed=Impegnato
|
||||
BookingType.Committed=Assegnato
|
||||
BookingType.Proposed=Proposto
|
||||
ButtonText.Cancel=Cancella
|
||||
ButtonText.Close=Chiudi
|
||||
ButtonText.IAccept=Accetto
|
||||
ButtonText.IAccept=Accetta
|
||||
ButtonText.OK=OK
|
||||
ButtonText.Open=Apri
|
||||
ButtonText.OpenCopy=Apri in sola lettura
|
||||
Calendar.24Hours=24 Ore
|
||||
Calendar.EditedWorkingHours=Modifiche orario di lavoro
|
||||
CalendarDialogBox.Wednesday=Mercoledì
|
||||
CalendarDialogBox.Wednesday=Mercoledì
|
||||
CalendarDialogBox.September=Settembre
|
||||
CalendarDialogBox.Seventeen=17:00
|
||||
CalculationDialogBox.Manual=\ Manuale
|
||||
|
@ -150,11 +153,11 @@ CalendarDialogBox.DurationSettings=Impostazioni sulla durata
|
|||
CalendarDialogBox.SetAsDefault=Imposta come predefinito
|
||||
CalendarDialogBox.HoursPerWeek=Ore a settimana :
|
||||
CalendarDialogBox.DaysPerMonth=Giorni al mese :
|
||||
Calendar.ExceptionCircular=Non è possibile utilizzare questo calendario come calendario di base in quanto dipende da lui stesso.
|
||||
CalendarDialogBox.Monday=Lunedì
|
||||
CalendarDialogBox.Tuesday=Martedì
|
||||
CalendarDialogBox.Thursday=Giovedì
|
||||
CalendarDialogBox.Friday=Venerdì
|
||||
Calendar.ExceptionCircular=Non è possibile utilizzare questo calendario come calendario di progetto in quanto dipende da se stesso.
|
||||
CalendarDialogBox.Monday=Lunedì
|
||||
CalendarDialogBox.Tuesday=Martedì
|
||||
CalendarDialogBox.Thursday=Giovedì
|
||||
CalendarDialogBox.Friday=Venerdì
|
||||
CalendarDialogBox.Saturday=Sabato
|
||||
CalendarDialogBox.Sunday=Domenica
|
||||
CalendarDialogBox.January=Gennaio
|
||||
|
@ -186,10 +189,10 @@ CalculationDialogBox.MoveEndOfCompleteParts=Move end of complete work that is af
|
|||
Calendar.Working=Lavorativo
|
||||
Category.assignmentEntrySpreadsheet=Tabella dei lavori in entrata
|
||||
Category.assignmentSpreadsheet=Tabella dei lavori
|
||||
Category.availabilitySpreadsheet=Tabella delle disponibilità
|
||||
Category.availabilitySpreadsheet=Tabella delle disponibilità
|
||||
Category.costRates=Tariffe di costo
|
||||
Category.dependencySpreadsheet=Tabella delle dipendenze
|
||||
CalculationDialogBox.Automatic=\ Automatico
|
||||
CalculationDialogBox.Automatic=Automatico
|
||||
CalculationDialogBox.Calculate=Calcola:
|
||||
Category.distributionSpreadsheet=Tabella degli utilizzi
|
||||
CalculationDialogBox.Calculation=Calcolo
|
||||
|
@ -204,13 +207,13 @@ Category.taskSpreadsheet;projectSpreadsheet=Tabella dei task e di progetto
|
|||
CalculationDialogBox.End=Fine
|
||||
Category.timesheetSpreadsheet=Tabella dei tempi
|
||||
ChangeWorkingTimeDialogBox.BasedOn=Base
|
||||
ChangeWorkingTimeDialogBox.ChangeWorkingTime=Cambia il calendario di lavoro
|
||||
ChangeWorkingTimeDialogBox.ChangeWorkingTime=Modifica il calendario di progetto
|
||||
ChangeWorkingTimeDialogBox.For=Per:
|
||||
ChangeWorkingTimeDialogBox.From=Da:
|
||||
ChangeWorkingTimeDialogBox.ModificationMessage=<html><font color="blue">Le modifiche di questo calendario influiranno su tutti i progetti che lo utilizzano.</font></html>
|
||||
ChangeWorkingTimeDialogBox.New=Nuovo...
|
||||
ChangeWorkingTimeDialogBox.NonDefaultWorkingTime=Non-default working time
|
||||
ChangeWorkingTimeDialogBox.NonWorkingTime=Non-working time
|
||||
ChangeWorkingTimeDialogBox.NonDefaultWorkingTime=Orario di lavoro personalizzato
|
||||
ChangeWorkingTimeDialogBox.NonWorkingTime=Orario non lavorativo
|
||||
ChangeWorkingTimeDialogBox.NotEdiableMessage=<html><font color="red">This calendar is only editable when editing the Master Project (Resource Pool).</font></html>
|
||||
ChangeWorkingTimeDialogBox.Options=Opzioni...
|
||||
ChangeWorkingTimeDialogBox.To=\ Per\:
|
||||
|
@ -222,8 +225,8 @@ ClientRole.TeamMember=Membro del team
|
|||
ClientRole.TeamResource=Team Resource
|
||||
ColumnDialog.InsertColumn=Inserisci nuova colonna
|
||||
Command.UpateProject=Aggiorna progetto
|
||||
Command.UpdateTasks=Aggiorna le attività
|
||||
ConstraintType.ALAP=Più tardi possibile
|
||||
Command.UpdateTasks=Aggiorna le attività
|
||||
ConstraintType.ALAP=Più tardi possibile
|
||||
ConstraintType.ASAP=Prima possibile
|
||||
ConstraintType.FNET=Non terminare prima di
|
||||
ConstraintType.FNLT=Non terminare dopo il
|
||||
|
@ -233,11 +236,11 @@ ConstraintType.MSO=Deve iniziare il
|
|||
ConstraintType.SNET=Non iniziare prima di
|
||||
ConstraintType.SNLT=Non iniziare dopo il
|
||||
#The CostRateIndex letters do not need translation for latin alphabets
|
||||
CostRateIndex.A=Tasso A
|
||||
CostRateIndex.B=Tasso B
|
||||
CostRateIndex.C=Tasso C
|
||||
CostRateIndex.D=Tasso D
|
||||
CostRateIndex.E=Tasso E
|
||||
CostRateIndex.A=Tariffa A
|
||||
CostRateIndex.B=Tariffa B
|
||||
CostRateIndex.C=Tariffa C
|
||||
CostRateIndex.D=Tariffa D
|
||||
CostRateIndex.E=Tariffa E
|
||||
Date.NoEnd=Poi
|
||||
# NA = Non applicabile
|
||||
Date.NoStart=NA
|
||||
|
@ -246,7 +249,7 @@ Date.Half1=H
|
|||
Date.Quarter2=Q2
|
||||
Date.Half2=Half
|
||||
DefaultFrameManager.Project=Progetto
|
||||
DelegateTaskDialog.DelegateTask=Delega l'attività
|
||||
DelegateTaskDialog.DelegateTask=Delega l'attività
|
||||
#These DependencyType values are shorter forms of the ones right below: FF is short for Finish-Finish for example
|
||||
DependencyType.FF=FF
|
||||
DependencyType.FS=FS
|
||||
|
@ -259,8 +262,8 @@ DependencyType.longSS=Start To Start
|
|||
EarnedValueCalculator.SPI=SPI
|
||||
EarnedValueCalculator.CPI=CPI
|
||||
EarnedValueCalculator.CSI=CSI
|
||||
EarnedValueMethodType.PercentComplete=% Completato
|
||||
EarnedValueMethodType.PhysicalPercentComplete=% Fisicamente completato
|
||||
EarnedValueMethodType.PercentComplete=% di completamento
|
||||
EarnedValueMethodType.PhysicalPercentComplete=% fisica di completamento
|
||||
ExpenseType.CAPITALIZE=Capitalizza
|
||||
ExpenseType.DIRECT=Diretto
|
||||
ExpenseType.EXPENSE=Costo
|
||||
|
@ -269,32 +272,32 @@ ExpenseType.NONE=Nessuno
|
|||
ExpenseType.OVERHEAD=Overhead
|
||||
Field.accessControlPolicy=Team di progetto
|
||||
Field.accrueAt=Maturano al
|
||||
Field.actualCost=Costo attuale
|
||||
Field.actualDuration=Durata attuale
|
||||
Field.actualFinish=Termine attuale
|
||||
Field.actualCost=Costo effettivo
|
||||
Field.actualDuration=Durata effettiva
|
||||
Field.actualFinish=Data chiusura effettiva
|
||||
Field.actualFixedCost=Costi fissi attuali
|
||||
Field.actualOvertimeCost=Costi attuali straordinari
|
||||
Field.actualOvertimeWork=Lavori attuali straordinari
|
||||
Field.actualOvertimeWorkProtected=Lavoro straordinario effettivo protetto
|
||||
Field.actualStart=Inizio attuale
|
||||
Field.actualWork=Lavoro attuale
|
||||
Field.actualStart=Data avvio effettiva
|
||||
Field.actualWork=Lavoro effettivo
|
||||
Field.actualWorkProtected=Lavoro attuale protetto
|
||||
Field.acwp=ACWP
|
||||
Field.assignedRate=Tasso di assegnazione
|
||||
Field.assignment=Assegnazione
|
||||
Field.assignmentEntryAssigned=Assegnato
|
||||
Field.assignmentEntryName=Nome
|
||||
Field.assignmentEntryRate=Unità
|
||||
Field.assignmentEntryRate=Unità
|
||||
Field.assignmentProjectName=Progetto
|
||||
Field.assignmentResourceId=ID Risorsa
|
||||
Field.assignmentResourceName=Risorsa
|
||||
Field.assignmentTaskId=ID Attività
|
||||
Field.assignmentTaskName=Attività
|
||||
Field.assignmentTaskId=ID Attività
|
||||
Field.assignmentTaskName=Attività
|
||||
Field.assignmentUnits=Assignment Units
|
||||
Field.availableFrom=Disponibile dal
|
||||
Field.availableTo=Disponibile a
|
||||
Field.bac=BAC
|
||||
Field.baseCalendar=Calendario di base
|
||||
Field.baseCalendar=Calendario di progetto
|
||||
#the # will be replaced by a number or by nothing
|
||||
Field.baseline#Cost=Baseline# dei costi
|
||||
Field.baseline#Duration=Baseline# delle durate
|
||||
|
@ -307,7 +310,7 @@ Field.benefit=Benefit
|
|||
Field.bookingType=Tipo di prenotazione
|
||||
Field.budgetStatusIndicator=Status del budget
|
||||
Field.cachedEnd=Fine
|
||||
Field.cachedStart=Avvio
|
||||
Field.cachedStart=Data di Avvio
|
||||
Field.canLevel=Can Level
|
||||
Field.code=Codice
|
||||
Field.complete=Completa
|
||||
|
@ -319,7 +322,7 @@ Field.constraintType=Tipologia di vincolo
|
|||
Field.contact=Contatto
|
||||
Field.cost=Costo
|
||||
Field.costPerUse=Costo per utilizzo
|
||||
Field.costRateTable=Tabella dei tassi di costo
|
||||
Field.costRateTable=tabella tariffe
|
||||
Field.costVariance=Varianza dei costi
|
||||
Field.cpi=CPI
|
||||
Field.created=Creato
|
||||
|
@ -353,29 +356,30 @@ Field.dirty=Sporco
|
|||
Field.duration=Durata
|
||||
Field.durationVariance=Varianza della durata
|
||||
Field.eac=EAC
|
||||
Field.earliestStartingTask=Avvio al più presto dell'attività
|
||||
Field.earlyFinish=Termine al più presto
|
||||
Field.earlyStart=Avvio al più presto
|
||||
Field.earliestStartingTask=Avvio al più presto dell'attività
|
||||
Field.earlyFinish=Termine al più presto
|
||||
Field.earlyStart=Avvio al più presto
|
||||
Field.earnedValueMethod=Metodo dell'Earned Value
|
||||
Field.effectiveDate=Data effettiva
|
||||
Field.effortDriven=Impegno guidato
|
||||
Field.effortDriven=Basato sulle risorse
|
||||
Field.elapsedDuration=Durata trascorsa
|
||||
Field.emailAddress=Indirizzo E-mail
|
||||
Field.estimated=Previsto
|
||||
Field.estimated=Stimata
|
||||
Field.expectedDuration=Durata prevista
|
||||
Field.expectedFinish=Termine previsto
|
||||
Field.expectedStart=Avvio previsto
|
||||
Field.expenseType=Tipologia di spesa
|
||||
Field.externalId=ID esterno
|
||||
Field.externalTask=Attività esterna
|
||||
Field.finish=Termine
|
||||
Field.finishDate=Termine
|
||||
Field.externalTask=Attività esterna
|
||||
Field.finish=Data di chiusura
|
||||
Field.finishDate=Data avvio effettiva
|
||||
Data di chiusura
|
||||
Field.finishOffset=Differenza finale
|
||||
Field.finishSlack=Ritardo finale
|
||||
Field.finishVariance=Varianza finale
|
||||
Field.fixedCost=Costo fisso
|
||||
Field.fixedCostAccrual=Costo fisso per competenza
|
||||
Field.forward=Anticipo programmato
|
||||
Field.forward=Programma dalla data di avvio
|
||||
Field.freeSlack=Free Slack
|
||||
Field.ganttSnapshot=Gantt
|
||||
Field.generic=Generico
|
||||
|
@ -401,18 +405,18 @@ Field.lateStart=Ritardo all'avvio
|
|||
Field.latestFinishingTask=Latest Finishing Task
|
||||
Field.levelAssignments=Level Assignments
|
||||
Field.levelingCanSplit=LevelingCanSplit
|
||||
Field.levelingDelay=Leveling Delay
|
||||
Field.levelingDelay=Ritardo dovuto al livellamento
|
||||
Field.linkedFields=Campi collegati
|
||||
Field.manager=Manager
|
||||
Field.markTaskAsMilestone=Visualizza attività come milestone
|
||||
Field.markTaskAsMilestone=Visualizza attività come milestone
|
||||
Field.marked=Contrassegnato
|
||||
Field.materialLabel=Etichetta materiale
|
||||
Field.maximumUnits=Unità massime
|
||||
Field.maximumUnits=Unità massime
|
||||
Field.milestone=Milestone
|
||||
Field.name=Nome
|
||||
Field.negativeSlack=Slittamento negativo
|
||||
Field.netPresentValue=Valore attuale netto
|
||||
Field.networkSnapshot=Network
|
||||
Field.networkSnapshot=Reticolo logico
|
||||
Field.notes=Note
|
||||
Field.objects=Ogetto
|
||||
Field.optimisticDuration=Durata ottimista
|
||||
|
@ -423,12 +427,12 @@ Field.outlineNumber=Numero struttura
|
|||
Field.overallocated=Sovrallocata
|
||||
Field.overallocation=Sovrallocazione
|
||||
Field.overtimeCost=Costi straordinari
|
||||
Field.overtimeRate=Tasso straordinari
|
||||
Field.overtimeRate=Tariffa straordinaria
|
||||
Field.overtimeWork=Lavoro straordinario
|
||||
Field.parentId#=ID Genitore#
|
||||
Field.partner=partner
|
||||
Field.peak=Picco
|
||||
Field.peakUnits=Unità picco
|
||||
Field.peakUnits=Unità picco
|
||||
Field.pendingTimesheetUpdate=La tabella necessita di un aggiornamento
|
||||
Field.percentAllocation=Percentuale di allocazione
|
||||
Field.percentComplete=Precentuale di completamento
|
||||
|
@ -443,29 +447,29 @@ Field.predecessorName=Predecessore
|
|||
Field.predecessors=Predecessori
|
||||
Field.preleveledFinish=Preleveled Finish
|
||||
Field.preleveledStart=Preleveled Start
|
||||
Field.priority=Priorità
|
||||
Field.priority=Priorità
|
||||
Field.project=Progetto
|
||||
Field.projectDivision=Ripartizione
|
||||
Field.projectGroup=Gruppo
|
||||
Field.projectId=ID Progetto
|
||||
Field.projectStatus=Stato del progetto
|
||||
Field.projectType=Tipologia di progetto
|
||||
Field.rate=Unità
|
||||
Field.rate=Unità
|
||||
Field.rbsCode=RBS
|
||||
Field.readOnlyDuration=Durata
|
||||
Field.recurring=Periodico
|
||||
Field.referringSubprojectTaskDependencyDate=Data di dipendenza sottoprogetto
|
||||
Field.regularWork=Lavoro regolare
|
||||
Field.remainingAvailability=Disponibilità rimanente
|
||||
Field.remainingAvailability=Disponibilità rimanente
|
||||
Field.remainingCost=Costi rimanenti
|
||||
Field.remainingDuration=Durata rimanente
|
||||
Field.remainingOvertimeCost=Costi straordinari rimanenti
|
||||
Field.remainingOvertimeWork=Lavoro straordinario rimanente
|
||||
FieldDialog.TaskInformation=Informazioni attività
|
||||
FieldDialog.TaskInformation=Informazioni attività
|
||||
Field.remainingWork=Lavoro rimanente
|
||||
# R/D is an abbreviation for Request / Demand; a resouce is requested or is demanded
|
||||
Field.requestDemandType=R/D
|
||||
Field.resourceAvailability=Disponibilità risorsa
|
||||
Field.resourceAvailability=Disponibilità risorsa
|
||||
Field.resourceGroup=Gruppo risorsa
|
||||
Field.resourceId=ID Risorsa
|
||||
Field.resourceInitials=Iniziali risorsa
|
||||
|
@ -481,14 +485,14 @@ Field.scheduleStatusIndicator=Schedule Status
|
|||
Field.schedulingMethod=Metodo di Scheduling
|
||||
Field.showProjectResourcesOnly=Mostra solo le risorse del progetto
|
||||
Field.spi=SPI
|
||||
Field.standardRate=Tasso standard
|
||||
Field.start=Avvio
|
||||
Field.startDate=Avvio
|
||||
Field.standardRate=Tariffa standard
|
||||
Field.start=Data di Avvio
|
||||
Field.startDate=Data di Avvio
|
||||
Field.startOffset=Start Offset
|
||||
Field.startSlack=Start Slack
|
||||
Field.startVariance=Start Variance
|
||||
Field.status=Status
|
||||
Field.statusDate=Status Data
|
||||
Field.statusDate=Data stato
|
||||
Field.statusIndicator=Overall Status
|
||||
Field.statusTaskIndicator=StatusTask Indicator
|
||||
Field.stop=Termina
|
||||
|
@ -503,12 +507,12 @@ Field.summaryProgress=Progresso sommario
|
|||
Field.suprojectReadOnly=Sottoprogetto in sola lettura
|
||||
Field.sv=SV
|
||||
Field.svPercent=Percentuale SV
|
||||
Field.taskCalendar=Calendario attività
|
||||
Field.taskId=ID Attività
|
||||
Field.taskName=Nome attività
|
||||
Field.taskCalendar=Calendario attività
|
||||
Field.taskId=ID Attività
|
||||
Field.taskName=Nome attività
|
||||
Field.taskOutlineNumber=Task Outline Number
|
||||
Field.taskSummaryName=Nome sommario attività
|
||||
Field.taskType=Tipo
|
||||
Field.taskSummaryName=Nome sommario attività
|
||||
Field.taskType=Tipologia legame
|
||||
Field.tcpi=TCPI
|
||||
Field.teamStatusPending=TeamStatus Pending
|
||||
Field.textAbove=Testo precedente
|
||||
|
@ -523,7 +527,7 @@ Field.totalSlackStart=Slittamento totale all'avvio
|
|||
Field.uniqueId=ID Unico
|
||||
Field.uniqueIdPredecessors=ID Unico predecessori
|
||||
Field.uniqueIdSuccessors=ID Unico successori
|
||||
Field.unitAvailability=Disponibilità unità
|
||||
Field.unitAvailability=Disponibilità unità
|
||||
Field.updateNeeded=Aggiornamento necessario
|
||||
Field.userAccount=Account utente
|
||||
Field.userRole=Ruolo nel progetto
|
||||
|
@ -534,7 +538,7 @@ Field.wbsParentName=Parente WBS
|
|||
Field.wbsPredecessors=Predecessori WBS
|
||||
Field.wbsSuccessors=Successori WBS
|
||||
Field.work=Lavoro
|
||||
Field.workAvailability=Disponibilità lavoro
|
||||
Field.workAvailability=Disponibilità lavoro
|
||||
Field.workContour=Profilo del lavoro
|
||||
Field.workVariance=Varianza lavoro
|
||||
File.microsoft=Microsoft Project
|
||||
|
@ -542,34 +546,34 @@ File.microsoftXML=Microsoft Project XML
|
|||
File.planner=Gnome Planner
|
||||
File.projects=Progetti
|
||||
File.ProjectLibre=ProjectLibre
|
||||
Filter.CompletedTasks=Attività completate
|
||||
Filter.CostOverbudgetTasks=Costo attività extra-budget
|
||||
Filter.CriticalTasks=Attività critiche
|
||||
Filter.CompletedTasks=Attività completate
|
||||
Filter.CostOverbudgetTasks=Costo attività extra-budget
|
||||
Filter.CriticalTasks=Attività critiche
|
||||
Filter.DateRange=Intervallo date
|
||||
Filter.Flag1=Flag 1
|
||||
Filter.Flag2=Flag 2
|
||||
Filter.Flag3=Flag 3
|
||||
Filter.InProgressAssignments=Assegnazioni in avanzamento
|
||||
Filter.InProgressTasks=Attività in avanzamento
|
||||
Filter.IncompleteTasks=Attività incomplete
|
||||
Filter.LateOrOverbudgetTasks=Attività in ritardo/fuori budget
|
||||
Filter.InProgressTasks=Attività in avanzamento
|
||||
Filter.IncompleteTasks=Attività incomplete
|
||||
Filter.LateOrOverbudgetTasks=Attività in ritardo/fuori budget
|
||||
Filter.Milestones=Milestones
|
||||
Filter.MyDelegatedTasks=Le mie attività delegate
|
||||
Filter.MyTasks=i attivitàs
|
||||
Filter.MyDelegatedTasks=Le mie attività delegate
|
||||
Filter.MyTasks=i attivitàs
|
||||
Filter.None=No filtri
|
||||
Filter.NormalTasks=Attività normali
|
||||
Filter.NormalTasks=Attività normali
|
||||
Filter.ResourcesMaterial=Risorse materiali
|
||||
Filter.ResourcesMe=Io
|
||||
Filter.ResourcesWork=Risorse del lavoro
|
||||
Filter.SlippedTasks=Attività slittate
|
||||
Filter.SummaryTasks=Sommario attività
|
||||
Filter.TasksWithEstimatedDurations=Stima dur. attività...
|
||||
Filter.SlippedTasks=Attività slittate
|
||||
Filter.SummaryTasks=Sommario attività
|
||||
Filter.TasksWithEstimatedDurations=Stima dur. attività...
|
||||
Filter.UnstartedAssignments=Assegnazioni non avviate
|
||||
FixedDuration.FixedDuration=Durata fissata
|
||||
Filter.UnstartedTasks=Attività non avviate
|
||||
Filter.UnstartedTasks=Attività non avviate
|
||||
Filter.WorkComplete=Lavoro completo
|
||||
FixedWork.FixedWork=Lavoro fissato
|
||||
FixedUnits.FixedUnits=Unità fissate
|
||||
FixedUnits.FixedUnits=Unità fissate
|
||||
FixedDuration.TheDurationMessage=Questo task a durata-fissata deve cambiare la propria durata per questo compito
|
||||
FooterRenderer.page=\ - pagina
|
||||
Gantt.Popup.annotationStylesMenu=Stili annotazione
|
||||
|
@ -580,13 +584,13 @@ Gantt.Popup.showRows=Mostra righe
|
|||
Gantt.Popup.splitMode=Dividi
|
||||
Gantt.tooltip.Assignment=Assegnazione
|
||||
Gantt.tooltip.Resource=Risorsa
|
||||
Gantt.tooltip.Task=Attività
|
||||
Gantt.tooltip.Task=Attività
|
||||
Gantt.tooltip.from=Da
|
||||
Gantt.tooltip.lag=Ritardo
|
||||
Gantt.tooltip.link=Collegamento
|
||||
Gantt.tooltip.to=Per
|
||||
GraphicManager.SelectedProjectAlreadyOpenedAsSubproject=Il progetto selezionato è già aperto come sottoprogetto di un altro progetto consolidato.
|
||||
GraphicManager.SelectedProjectAlreadySubproject=Il progetto selezionato è già aperto come sottoprogetto di questo progetto consolidato.
|
||||
GraphicManager.SelectedProjectAlreadyOpenedAsSubproject=Il progetto selezionato è già aperto come sottoprogetto di un altro progetto consolidato.
|
||||
GraphicManager.SelectedProjectAlreadySubproject=Il progetto selezionato è già aperto come sottoprogetto di questo progetto consolidato.
|
||||
Grouper.AssignmentProjectName=Nome progetto
|
||||
Grouper.CompleteIncomplete=Completo/incompleto
|
||||
Grouper.Critical=Critica
|
||||
|
@ -608,9 +612,9 @@ InformationDialog.ChangeWorkingTime=Cambia l'orario lavorativo
|
|||
License.Inactive=Inattivo
|
||||
License.LiteUser=Lite User
|
||||
License.PowerUser=Utente esperto
|
||||
LicenseDialog.CouldNotLoadLater=Non è stato possibile caricare la licenza. Per favore riprovare più tardi.
|
||||
LicenseDialog.CouldNotLoadExiting=Non è possibile caricare la licenza. Per favore riprovare più tardi. Il programma sarà terminato.
|
||||
LicenseDialog.Email=Per favore registra la tua compia di ProjectLibre per rimanere informato sulle novità e sugli aggiornamenti del prodotto.
|
||||
LicenseDialog.CouldNotLoadLater=Non è stato possibile caricare la licenza. Per favore riprovare più tardi.
|
||||
LicenseDialog.CouldNotLoadExiting=Non è possibile caricare la licenza. Per favore riprovare più tardi. Il programma sarà terminato.
|
||||
LicenseDialog.Email=Per favore registra la tua compia di ProjectLibre per rimanere informato sulle novità e sugli aggiornamenti del prodotto.
|
||||
LicenseDialog.EmailLabel=Indirizzo E-mail
|
||||
LicenseDialog.License=Licenza
|
||||
LicenseDialog.ThirdParty=Parte terza
|
||||
|
@ -632,82 +636,82 @@ LookupDialog.Type=Tipo:
|
|||
LookupDialog.UnableToContactServer=Impossibile contattare il server.
|
||||
LookupField.LookupAValue=Ricerca diretta del valore
|
||||
Message.ImportError=Impossibile leggere il file
|
||||
Message.allowDeleteActuals=L'elemento/i selezionato/i hanno già questi valori. Sei sicuro di volerli cancellare?
|
||||
Message.allowDistrbutedStartBeforeProjectStart=Il valore provocherà l'avvio dell'attività prima dell'avvio del progetto. Procedere comunque?
|
||||
Message.allowDistrbutedStartBeforeTaskStart=Il valore è precedente all'avvio dell'attività. Procedere comunque?
|
||||
Message.allowTaskStartBeforeProjectStart=Questa attività si può avviare prima dell'avvio dell'intero progetto?
|
||||
Message.alreadyParentChildHierarchy=E' già presente una relazione di tipo padre/figlio.
|
||||
Message.allowDeleteActuals=L'elemento/i selezionato/i hanno già questi valori. Sei sicuro di volerli cancellare?
|
||||
Message.allowDistrbutedStartBeforeProjectStart=Il valore provocherà l'avvio dell'attività prima dell'avvio del progetto. Procedere comunque?
|
||||
Message.allowDistrbutedStartBeforeTaskStart=Il valore è precedente all'avvio dell'attività. Procedere comunque?
|
||||
Message.allowTaskStartBeforeProjectStart=Questa attività si può avviare prima dell'avvio dell'intero progetto?
|
||||
Message.alreadyParentChildHierarchy=E' già presente una relazione di tipo padre/figlio.
|
||||
Message.badTimeFormat=Formato orario non consentito
|
||||
Message.badTimeIntervals=Intervallo orario non consentito
|
||||
Message.cannotEnterUnits=Non è possibile inserire unità in questo campo
|
||||
Message.cannotEnterUnits=Non è possibile inserire unità in questo campo
|
||||
Message.cannotLinkToSummary=You cannot link a summary task and one of its subtasks.\nIf you want to link them, remove the hierarchy by outdenting the subtask so it is no longer under the summary task.
|
||||
Message.cannotLinkTwice=Questo collegamento è già presente.
|
||||
Message.cannotLinkTwice=Questo collegamento è già presente.
|
||||
Message.cantEmptySpreadsheet=Questa tabella deve contenere almeno un campo.
|
||||
Message.cantLinkToClosedSubproject=A subproject must be open and writable in order to be the target of a link as it affects the subproject's start date.
|
||||
Message.cantLinkToExternal=Non è possibile creare collegamenti con attività esterne.
|
||||
Message.cantLinkToSelf=Non è possibile collegare un'attività a se stessa.
|
||||
Message.cantLinkToExternal=Non è possibile creare collegamenti con attività esterne.
|
||||
Message.cantLinkToSelf=Non è possibile collegare un'attività a se stessa.
|
||||
Message.circularDependency=This link is invalid as it would a create a circular dependency relationship with other tasks.
|
||||
Message.confirmDeleteRows=Si è sicuri di voler cancellare queste righe?
|
||||
Message.confirmDeleteRows=Si è sicuri di voler cancellare queste righe?
|
||||
# {0} is the name of the predecessor task, {1} is the name of the successor task
|
||||
Message.crossProjectCircularDependency.mf=A cross project link from {0} to {1} would cause a circular dependency relationship with other tasks. It is disabled and marked in dotted lines.
|
||||
Message.errorCalendarMustHaveWorkingDay=Il calendario deve contenere almeno un giorno lavorativo.
|
||||
# {1,number,percent} is the maximum percentage value that has been exceeded
|
||||
Message.errorPercentRangeMaximum.mf=Il valore non può essere superiore a {1,number,percent}.
|
||||
Message.errorPercentRangeMaximum.mf=Il valore non può essere superiore a {1,number,percent}.
|
||||
# {0,number,percent} is the minimum percentage value that has been exceeded
|
||||
Message.errorPercentRangeMinimum.mf=Il valore deve essere superiore a {0,number,percent}.
|
||||
# {0,number} is the range minimum, {1,number} is the range maximum
|
||||
Message.errorRange.mf=Il valore deve essere compreso tra {0,number} e {1,number}.
|
||||
# {1,number} is the maximum value that has been exceeded
|
||||
Message.errorRangeMaximum.mf=Il valore non può essere superiore a {1,number}.
|
||||
Message.errorRangeMaximum.mf=Il valore non può essere superiore a {1,number}.
|
||||
# {0,number} is the minimum value that has been exceeded
|
||||
Message.errorRangeMinimum.mf=Il valore deve essere superiore a {0,number}.
|
||||
Message.importCircularLink=Il progetto non può essere importato perchè contiene una relazione circolare con il predecessore.
|
||||
Message.invalidAssignments=Si devono inserire risorse già esistenti nel pool di risorse separate dal carattere ";". Se si desidera assegnare meno del 100%, è possibile specificare una percentuale tra parentesi: e.g. Clark Kent[50%];Lois Lane
|
||||
Message.importCircularLink=Il progetto non può essere importato perchè contiene una relazione circolare con il predecessore.
|
||||
Message.invalidAssignments=Si devono inserire risorse già esistenti nel pool di risorse separate dal carattere ";". Se si desidera assegnare meno del 100%, è possibile specificare una percentuale tra parentesi: e.g. Clark Kent[50%];Lois Lane
|
||||
Message.invalidChoice=Scelta non valida
|
||||
Message.invalidCost=Costo non valido\nQuesto costo non è valido. Il costo deve essere espresso in numeri. Il simbolo corrente è opzionale.\nIl simbolo corrente è predefinito nel tuo sistema.
|
||||
Message.invalidDate=Data non valida\nQuesta data non è valida o è al di fuori dei valori ammissibili. La data deve essere compresa tra il 01 Gennaio 1970 e il 31 Dicembre 2049.\nIl formato data è quello predefinito del sistema. Esempio\: 3/12/06 o 3 Mar 2006.
|
||||
Message.invalidCost=Costo non valido\nQuesto costo non è valido. Il costo deve essere espresso in numeri. Il simbolo corrente è opzionale.\nIl simbolo corrente è predefinito nel tuo sistema.
|
||||
Message.invalidDate=Data non valida\nQuesta data non è valida o è al di fuori dei valori ammissibili. La data deve essere compresa tra il 01 Gennaio 1970 e il 31 Dicembre 2049.\nIl formato data è quello predefinito del sistema. Esempio\: 3/12/06 o 3 Mar 2006.
|
||||
# {0} is either "predecessor" or "successor"
|
||||
Message.invalidDependency.mf={0} è non valido.\nPer favore usa un ID dell'attività valido.\n\u00B7 L'informazione di {0} è espressa come\: {0} numero ID, dipendenza, e anticipo/ritardo.\n\u00B7 E' anche possibile utilizzare il riquadro Infromazioni delle attività.
|
||||
Message.invalidDuration=Durata non valida\nQuesto valore della durata non è valido.\nPer favore trova un valore come 24 ore (24h), 3 giorni (3d), o 9ed per giorni mancanti.
|
||||
Message.invalidInput=Il valore non è valido.
|
||||
Message.invalidDependency.mf={0} è non valido.\nPer favore usa un ID dell'attività valido.\n\u00B7 L'informazione di {0} è espressa come\: {0} numero ID, dipendenza, e anticipo/ritardo.\n\u00B7 E' anche possibile utilizzare il riquadro Infromazioni delle attività.
|
||||
Message.invalidDuration=Durata non valida\nQuesto valore della durata non è valido.\nPer favore trova un valore come 24 ore (24h), 3 giorni (3d), o 9ed per giorni mancanti.
|
||||
Message.invalidInput=Il valore non è valido.
|
||||
Message.invalidIntersection=Resulting working time is invalid\n\nThere is a task which, intersected with its resource calendar, does not have enough working time for any work to be performed.\nThe task will ignore the resource calendar. \nTo remedy this, you can change the task or resource calendar, or choose the "Ignore Resource Calendar" option for the task.
|
||||
Message.invalidRate=This is not a valid rate.\nFor Work (non-material) resources, type the rate amount followed by a slash (/), and then the abbreviation for the time period. For example, "100/h".\nFor material resources, type the rate amount without a slash and time period\nFor example, "10". If your Material label is "barrel", this would mean "$10/barrel".
|
||||
Message.invaliidUnits=This is not a valid Units value\n\nFor Work (non-material) resources , type a number.\n\nMaterial resource assignments can be either fixed or variable. For a fixed material resource assignment, type the units value alone. For example, "10" would mean "10 barrels", if your material label was "barrel".\n\nFor a variable material resource assignment, type the units value, followed by a slash(/), and then the abbreviation for the time period. For example, "10/M" would mean "12 barrels per month".
|
||||
Message.notAResource=L'elemento selezionato non è una risorsa
|
||||
Message.notATask=L'elemento selezionato non è un task
|
||||
Message.notAResource=L'elemento selezionato non è una risorsa
|
||||
Message.notATask=L'elemento selezionato non è un task
|
||||
Message.onlyReplaceOneResourceAtATime=E' possibile sostituire solo una risorsa per volta.
|
||||
Message.onlySelectOneElement=Può essere selezionato solo un elemento per volta.
|
||||
Message.onlySelectOneElement=Può essere selezionato solo un elemento per volta.
|
||||
Message.parentConstraintType=Parent tasks may only be one of: "As Soon As Possible", "Start No Earlier Than" or "Finish No Later Than". If you are using reverse scheduling, then "As Late As Possible" is an option instead of "As Soon as Possible".
|
||||
Message.parentSuccessorCannotHaveFinishLink=Predecessors of a parent task may only be of types Finish-Start or Start-Start
|
||||
Message.projectAlreadyExists=Esiste già questo progetto. Eliminare la versione corrente?
|
||||
Message.projectAlreadyExists=Esiste già questo progetto. Eliminare la versione corrente?
|
||||
Message.projectMustHaveName=Il progeto deve avere un nome.
|
||||
#Be careful to keep quotes at start or end as a value will be inserted between the 1 and 2 versions
|
||||
Message.renameProject1=Progetto "
|
||||
Message.renameProject2=" è già presente sul server. Per favore si scelga un altro nome.
|
||||
Message.renameProject2=" è già presente sul server. Per favore si scelga un altro nome.
|
||||
Message.saveProjectAs1=Salva progetto "
|
||||
Message.saveProjectAs2=" come
|
||||
Message.saveProjectBeforeClosing1=Vuoi salvare le modifiche di "
|
||||
Message.saveProjectBeforeClosing2=" ?
|
||||
Message.subprojectCut=I sottoprogetti saranno convertiti in attività normali. Questa attività non potrà essere annullata. Continuare comunque?
|
||||
Message.subprojectCut=I sottoprogetti saranno convertiti in attività normali. Questa attività non potrà essere annullata. Continuare comunque?
|
||||
Message.synchronizeResources=Si desidera sincronizzare le risorse con il server?
|
||||
Message.tooManyResourcesSelectedToList.mf={0,number} Risorse selezionate (troppe per essere mostrate)
|
||||
Message.tooManyTasksSelectedToList.mf={0,number} Attività selezionate (troppe per essere mostrate)
|
||||
MicrosoftImporter.ErrorImportingXML=Non è possibile importare il file XML. Solo i file XML creati con MS Project o Planner possono essere importati.
|
||||
MicrosoftImporter.ImportWithSubprojects=Il progetto contiene sottoprogetti. E' necessario importali manualmente. Le attività corrispondenti sono:
|
||||
Message.tooManyTasksSelectedToList.mf={0,number} Attività selezionate (troppe per essere mostrate)
|
||||
MicrosoftImporter.ErrorImportingXML=Non è possibile importare il file XML. Solo i file XML creati con MS Project o Planner possono essere importati.
|
||||
MicrosoftImporter.ImportWithSubprojects=Il progetto contiene sottoprogetti. E' necessario importali manualmente. Le attività corrispondenti sono:
|
||||
MicrosoftImporter.Importing=Importando...
|
||||
MicrosoftImporter.PrepareResources=Preparare le risorse
|
||||
Network.Popup.barStylesMenu=Stili della barra
|
||||
NewBaseCalendarDialog.CreateACopyOfCalendar=Esegui una copia del calendario
|
||||
NewBaseCalendarDialog.CreateANewBaseCalendar=Crea un nuovo calendario di base
|
||||
NewBaseCalendarDialog.CreateACopyOfCalendar=Crea una copia del calendario
|
||||
NewBaseCalendarDialog.CreateANewBaseCalendar=Crea nuovo Calendario di progetto
|
||||
NewBaseCalendarDialog.Name=Nome
|
||||
NewBaseCalendarDialog.NewBaseCalendar=\ Nuovo calendario di base
|
||||
NewBaseCalendarDialog.NewBaseCalendar=\ Nuovo Calendario di progetto
|
||||
Open_Text.ApplicationTitle=ProjectLibre
|
||||
OpenProjectDialog.LockedBy=Blocato da
|
||||
Open_Text.ShortTitle=ProjectLibre
|
||||
Open_Text.welcomeToPod=Benvenuti in ProjectLibre
|
||||
OpenProjectDialog.CreationDate=Data di creazione
|
||||
OpenProjectDialog.ModificationDate=Data di modifica
|
||||
OpenProjectDialog.Name=Nome
|
||||
OpenProjectDialog.Name=Nome progetto
|
||||
Open_Title.ProjectLibreError=Errore ProjectLibre
|
||||
Open_Title.ProjectLibreWarning=Allert ProjectLibre
|
||||
PageSetupDialog.Margins=Margini
|
||||
|
@ -756,7 +760,7 @@ PageSetupDialog.ShowParts=Diagrammi
|
|||
PageSetupDialog.ShowSpreadSheet=Tabella
|
||||
PageSetupDialog.Title=Setup pagina
|
||||
PageSetupDialog.NotPDFPrintServiceForWebDefault=
|
||||
PageSetupDialog.NotValidPrinter=Il servizio selezionato è un servizio PDF, per favore si selezioni una stampante.
|
||||
PageSetupDialog.NotValidPrinter=Il servizio selezionato è un servizio PDF, per favore si selezioni una stampante.
|
||||
PersonalContour.personal=Personale
|
||||
ProjectStatus.ACTIVE=Attiva
|
||||
PreviewPanel.Preview=Anteprima
|
||||
|
@ -788,10 +792,10 @@ ProjectType.SALES_CAMPAIGN=Campagna di vendita
|
|||
ProjectDialog.ProjectName=Nome progetto:
|
||||
ProjectDialog.ProjectTeam=Team di progetto:
|
||||
ProjectType.TECHNICAL_SUPPORT=Supporto tecnico
|
||||
RenameDialog.AnotherItemWithThatNameAlreadyExists=Esiste già un altro elemento con qesto nome.
|
||||
RenameDialog.AnotherItemWithThatNameAlreadyExists=Esiste già un altro elemento con questo nome.
|
||||
RenameDialog.NewName=Nuovo nome
|
||||
RenameDialog.Rename=Rinomina
|
||||
RenameDialog.TheNameCannotBeEmpty=Il nome non può essere vuoto
|
||||
RenameDialog.TheNameCannotBeEmpty=Il nome non può essere vuoto
|
||||
RenameProjectDialog.NewProject=Nuovo progetto
|
||||
RenameProjectDialog.NewProjectName=Nuovo progetto con nome:
|
||||
RenameProjectDialog.RenameProject=Rinomina progetto
|
||||
|
@ -807,13 +811,13 @@ ResourceIndicatorsComponent.Administrator=\ (Amministratore)
|
|||
ResourceIndicatorsComponent.PartnerCustomer=\ (Partner/Cliente)
|
||||
ResourceIndicatorsComponent.ThisResourceIsOnTheProjectTeam=Questa risorsa fa parte del team di progetto<br>
|
||||
ResourceIndicatorsComponent.UserLicense=Licenza utente:
|
||||
ResourceInformationDialog.AssignedToTasks=Assegnato alle attività:
|
||||
ResourceInformationDialog.AssignedToTasks=Assegnato alle attività:
|
||||
ResourceInformationDialog.Costs=Costi
|
||||
ResourceInformationDialog.General=Generale
|
||||
ResourceInformationDialog.Notes=Note
|
||||
ResourceInformationDialog.ResourceAvailability=Disponibilità risorsa
|
||||
ResourceInformationDialog.ResourceAvailability=Disponibilità risorsa
|
||||
ResourceInformationDialog.ResourceInformation=Informazioni risorsa
|
||||
ResourceInformationDialog.Tasks=Attività
|
||||
ResourceInformationDialog.Tasks=Attività
|
||||
ResourceMappingDialog.AllResourcesExceptCustomerPartner=Tutte le risorse (eccetto Cliente/Partner)
|
||||
ResourceMappingDialog.BasedOnProjectRoleInResourcesView=Basato sul ruolo di progetto nella scheda Risorse
|
||||
ResourceMappingDialog.DontMergeOpenProjectReadOnly=Non unire, apri progetto in sola-lettura
|
||||
|
@ -827,26 +831,26 @@ ResourceType.Machine=Macchina
|
|||
ResourceType.Material=Materiale
|
||||
ResourceType.Other=Altro
|
||||
ResourceType.Work=Lavoro
|
||||
ResourceView.ThisResourceCurrentlyHasAssignments=. Questa risorsa ha già dei compiti.
|
||||
ResourceView.ToMoveAProtectedResource=Per modificare la gerarchia di una risorsa non modificabile è possibile creare un collegamento nella vista RBS.
|
||||
ResourceView.ThisResourceCurrentlyHasAssignments=. Questa risorsa ha già dei compiti.
|
||||
ResourceView.ToMoveAProtectedResource=Per modificare la gerarchia di una risorsa non modificabile è possibile creare un collegamento nella vista RBS.
|
||||
ResourceView.UsersCanOnlyBeRemoved=. Gli utenti possono essere rimossi o resi inattivi solo dalla pagina web di gestione degli utenti.
|
||||
ResourceView.YouCannotDeleteTheResource=Non è possibile eliminare la risorsa:
|
||||
ResourceView.YouCannotDeleteTheResource=Non è possibile eliminare la risorsa:
|
||||
Role.Inactive=Inattivo
|
||||
Role.ProjectManager=Project Manager
|
||||
Role.TeamMember=Membro del team
|
||||
SchedulingType.FixedDuration=Dura fissa
|
||||
SchedulingType.FixedDuration=Durata fissa
|
||||
ScheduleDialogBox.Percentage=Percentuale
|
||||
ScheduleDialogBox.FixedDuration=Durata fissa
|
||||
ScheduleDialogBox.FixedUnits=Unità fissa
|
||||
ScheduleDialogBox.FixedUnits=Unità fissa
|
||||
ScheduleDialogBox.FixedWork=Lavoro fisso
|
||||
ScheduleDialogBox.SetAsDefault=Usa come predefinito
|
||||
ScheduleDialogBox.WorkIsEnteredIn=\ Il lavoro è stato inserito in
|
||||
ScheduleDialogBox.DefaultTaskType=\ Tipologia di attività predefinita
|
||||
SchedulingType.FixedUnits=Unità fissa
|
||||
ScheduleDialogBox.WorkIsEnteredIn=\ Il lavoro è stato inserito in
|
||||
ScheduleDialogBox.DefaultTaskType=\ Tipologia di attività predefinita
|
||||
SchedulingType.FixedUnits=Unità fissa
|
||||
ScheduleDialogBox.Schedule=Ordine
|
||||
ScheduleDialogBox.Decimal=Decimale
|
||||
ScheduleDialogBox.Minutes=Minuti
|
||||
ScheduleDialogBox.NewTask=\ Nuova attività
|
||||
ScheduleDialogBox.NewTask=\ Nuova attività
|
||||
SchedulingType.FixedWork=Lavoro fisso
|
||||
ScheduleDialogBox.Hours=Ore
|
||||
ScheduleDialogBox.Days=Giorni
|
||||
|
@ -857,7 +861,7 @@ Sorter.CompleteIncomplete=Completo/incompleto
|
|||
Sorter.Cost=Costo
|
||||
Sorter.CostOverbudget=Costo extra
|
||||
Sorter.CostPerUse=Costo per utilizzo
|
||||
Sorter.Critical=Criticità
|
||||
Sorter.Critical=Criticità
|
||||
Sorter.Delegated=Delegato a
|
||||
Sorter.Duration=Durata
|
||||
Sorter.DurationThenCost=Durata poi costi
|
||||
|
@ -867,7 +871,7 @@ Sorter.None=Nessun ordinamento
|
|||
Sorter.OvertimeRate=Overtime rate
|
||||
Sorter.ResourceGroup=Gruppo
|
||||
Sorter.ResourceType=Tipo
|
||||
Sorter.StandardRate=Tasso standard
|
||||
Sorter.StandardRate=Tariffa standard
|
||||
Sorter.StartDate=Data di avvio
|
||||
Spreadsheet.Action.collapse=Collassa
|
||||
Spreadsheet.Action.copy=Copia
|
||||
|
@ -881,12 +885,12 @@ Spreadsheet.Action.paste=Incolla
|
|||
Spreadsheet.Assignment.resourceUsage=Utilizzo risorsa
|
||||
Spreadsheet.Assignment.taskUsage=Task Usage
|
||||
Spreadsheet.AssignmentEntry.assignResources=Assegna risorse
|
||||
Spreadsheet.AssignmentEntry.replaceResources=Rimpiazza risorse
|
||||
Spreadsheet.AssignmentEntry.replaceResources=Sostituisci Risorse
|
||||
Spreadsheet.Dependency.predecessors=Predecessori
|
||||
Spreadsheet.Dependency.successors=Successori
|
||||
Spreadsheet.Project.default=Default
|
||||
Spreadsheet.Project.portfolio=Portfolio
|
||||
Spreadsheet.Project.properties=Proprietà
|
||||
Spreadsheet.Project.properties=Proprietà
|
||||
Spreadsheet.Resource.earnedValue=Earned Value
|
||||
Spreadsheet.Resource.earnedValueCostIndicators=Earned Value - Costi
|
||||
Spreadsheet.Resource.earnedValueScheduleIndicators=Earned Value - Tempi
|
||||
|
@ -894,7 +898,7 @@ Spreadsheet.Resource.entryWorkResources=Default
|
|||
Spreadsheet.ResourceAssignment.reportAssignmentResource=Nome e ID
|
||||
Spreadsheet.ResourceAssignment.reportAssignmentTask=Report di base
|
||||
Spreadsheet.ResourceAssignment.resources=Risorse assegnate
|
||||
Spreadsheet.ResourceAssignment.tasks=Attività assegnate
|
||||
Spreadsheet.ResourceAssignment.tasks=Attività assegnate
|
||||
Spreadsheet.ResourceTimesheet.status=Stato tabella dei tempi
|
||||
Spreadsheet.ResourceUsage.default=Utilizzo risorsa (distribuzione)
|
||||
Spreadsheet.nameOnly=Nome
|
||||
|
@ -915,13 +919,13 @@ Spreadsheet.Task.variance=Varianza sui tempi
|
|||
Spreadsheet.TaskAssignment.reportAssignmentResource=Nome e ID
|
||||
Spreadsheet.TaskAssignment.reportAssignmentTask=Report di base
|
||||
Spreadsheet.TaskAssignment.resources=Risorse assegnate
|
||||
Spreadsheet.TaskAssignment.tasks=Attività assegnate
|
||||
Spreadsheet.TaskAssignment.tasks=Attività assegnate
|
||||
Spreadsheet.TaskTimesheet.status=Stato tabella dei tempi
|
||||
Spreadsheet.TaskUsage.default=Utilizzo risorsa (distribuzione)
|
||||
Spreadsheet.Timesheet.Default=Tabella
|
||||
Spreadsheet.Timesheet.completion=Completion
|
||||
SpreadSheetColumnMenu.HideColumn=Nascondi colonna
|
||||
Spreadsheet.availability=Disponibilità
|
||||
Spreadsheet.availability=Disponibilità
|
||||
Spreadsheet.costRates=Tassi di costo
|
||||
Spreadsheet.empty=
|
||||
StandardContour.backLoaded=Back Loaded
|
||||
|
@ -933,7 +937,7 @@ StandardContour.frontLoaded=Front Loaded
|
|||
StandardContour.latePeak=Late Peak
|
||||
StandardContour.plateau=Plateau
|
||||
Styles.Annotation.milestone=Milestone
|
||||
Styles.Annotation.normal=Attività normale
|
||||
Styles.Annotation.normal=Attività normale
|
||||
Styles.Bar.Row.assignment=Assegnazioni
|
||||
Styles.Bar.Row.baseline10=Baseline 10
|
||||
Styles.Bar.Row.baseline1=Baseline 1
|
||||
|
@ -946,13 +950,13 @@ Styles.Bar.Row.baseline7=Baseline 7
|
|||
Styles.Bar.Row.baseline8=Baseline 8
|
||||
Styles.Bar.Row.baseline9=Baseline 9
|
||||
Styles.Bar.Row.baseline=Baseline
|
||||
Styles.Bar.Row.critical=Attività critiche
|
||||
Styles.Bar.Row.critical=Attività critiche
|
||||
Styles.Bar.Row.deadline=Scadenza
|
||||
Styles.Bar.Row.external=Attività esterne
|
||||
Styles.Bar.Row.external=Attività esterne
|
||||
Styles.Bar.Row.milestone=Milestones
|
||||
Styles.Bar.Row.subproject=Sottoprogetti
|
||||
Styles.Bar.Row.summary=Sommario attività
|
||||
Styles.Bar.Row.task=Attività non critiche
|
||||
Styles.Bar.Row.summary=Sommario attività
|
||||
Styles.Bar.Row.task=Attività non critiche
|
||||
Styles.Bar.Row.timesheet=tabella dei tempi
|
||||
Styles.Bar.Row.totalSlack=Slittamento complessivo
|
||||
Styles.Calendar.nonWorking=Mostra calendario
|
||||
|
@ -981,21 +985,21 @@ Symbol.rightBracketRegex=\\]
|
|||
Symbol.slash=/
|
||||
TaskIndicatorsComponent.Notes=Note: '
|
||||
TaskIndicatorsComponent.TheCalendar=Il calendario '
|
||||
TaskIndicatorsComponent.TheIntersection=L'intersezione dei calendari dell'attività e della risorsa non fornisce tempo lavorativo.<br>
|
||||
TaskIndicatorsComponent.TheTaskWasCompletedOn=L'attività è stata completata il
|
||||
TaskIndicatorsComponent.ThisParentTaskHasResources=Questa attività parente ha assegnato risorse direttamente a:
|
||||
TaskIndicatorsComponent.ThisSubprojectIsNotValid=QUesto sottoprogetto non è valido: può essere inserito solo una volta nel progetto.
|
||||
TaskIndicatorsComponent.ThisTaskFinishesOn=Questa attività finisce il
|
||||
TaskIndicatorsComponent.ThisTaskHasA=Questa attività ha un '
|
||||
TaskIndicatorsComponent.ThisTaskHasBeenDelegatedTo=Questa attività è stata delegata a
|
||||
TaskIndicatorsComponent.ThisTaskHasBeenDelegatedToYou=Questa attività è stata delegata a te
|
||||
TaskIndicatorsComponent.ThisTasksRepresentsThe=Questa attività rappresenta il
|
||||
TaskIndicatorsComponent.TheIntersection=L'intersezione dei calendari dell'attività e della risorsa non fornisce tempo lavorativo.<br>
|
||||
TaskIndicatorsComponent.TheTaskWasCompletedOn=L'attività è stata completata il
|
||||
TaskIndicatorsComponent.ThisParentTaskHasResources=Questa attività parente ha assegnato risorse direttamente a:
|
||||
TaskIndicatorsComponent.ThisSubprojectIsNotValid=QUesto sottoprogetto non è valido: può essere inserito solo una volta nel progetto.
|
||||
TaskIndicatorsComponent.ThisTaskFinishesOn=Questa attività finisce il
|
||||
TaskIndicatorsComponent.ThisTaskHasA=Questa attività ha un '
|
||||
TaskIndicatorsComponent.ThisTaskHasBeenDelegatedTo=Questa attività è stata delegata a
|
||||
TaskIndicatorsComponent.ThisTaskHasBeenDelegatedToYou=Questa attività è stata delegata a te
|
||||
TaskIndicatorsComponent.ThisTasksRepresentsThe=Questa attività rappresenta il
|
||||
TaskIndicatorsComponent.constraintOn=' vincolato a
|
||||
TaskIndicatorsComponent.isAssignedToTheTask=' è assegnato all'attività.<br>
|
||||
TaskIndicatorsComponent.isAssignedToTheTask=' è assegnato all'attività.<br>
|
||||
TaskIndicatorsComponent.opened=aperto
|
||||
TaskIndicatorsComponent.subproject=\ sottoprogetto\:
|
||||
TaskIndicatorsComponent.unopened=non aperto
|
||||
TaskIndicatorsComponent.whichIsAfterItsDeadline=\ che è oltre la sua scadenza di
|
||||
TaskIndicatorsComponent.whichIsAfterItsDeadline=\ che è oltre la sua scadenza di
|
||||
TaskInformationDialog.Advanced=Avanzato
|
||||
TaskInformationDialog.ConstrainTask=Vincoli
|
||||
TaskInformationDialog.Dates=Date
|
||||
|
@ -1004,7 +1008,7 @@ TaskInformationDialog.Notes=Note
|
|||
TaskInformationDialog.Predecessors=Predecessori
|
||||
TaskInformationDialog.Resources=Risorse
|
||||
TaskInformationDialog.Successors=Successori
|
||||
TaskInformationDialog.TaskInformation=Informazioni attività
|
||||
TaskInformationDialog.TaskInformation=Informazioni attività
|
||||
Text.Allocated=Allocato
|
||||
Text.ApplicationTitle=ProjectLibre
|
||||
Text.Assign=Assegna
|
||||
|
@ -1012,12 +1016,12 @@ Text.AssignResources=Assegna risorse
|
|||
Text.Baseline=Baseline
|
||||
Text.Cancel=Cancella
|
||||
Text.ClearBaseline=Cancella Baseline
|
||||
Text.CostRateTables=Tabella dei tassi di costo
|
||||
Text.CostRateTables=tabella tariffe
|
||||
Text.Cumulative=Cumulativo
|
||||
Text.DetectingJavaVersion=Ricercando la versione di Java...
|
||||
Text.DisabledExternalTaskDependency=Dipendenza da attività esterne disattivata
|
||||
Text.DisabledExternalTaskDependency=Dipendenza da attività esterne disattivata
|
||||
Text.EntireProject=Intero Project
|
||||
Text.ExternalTaskDependency=Dipendenza da attività esterne
|
||||
Text.ExternalTaskDependency=Dipendenza da attività esterne
|
||||
Text.Field=Campo
|
||||
Text.Filter=Filtro
|
||||
Text.From=Da
|
||||
|
@ -1029,18 +1033,18 @@ Text.No=No
|
|||
Text.None=Nessuno
|
||||
Text.OtherProjects=Altri progetti
|
||||
Text.Remove=Rimuovi
|
||||
Text.Replace=Rimpiazza
|
||||
Text.ReplaceResource=Rimpiazza risorsa
|
||||
Text.Replace=Sostituisci
|
||||
Text.ReplaceResource=Sostituisci risorsa
|
||||
Text.Save=Salva
|
||||
Text.SaveBaseline=Salva Baseline
|
||||
Text.Selected=Selezionato
|
||||
Text.SelectedTasks=Attività selezionate
|
||||
Text.SelectedTasks=Attività selezionate
|
||||
Text.ShowSelectedOnTop=Mostra i selezionati in alto
|
||||
Text.ShowTeamResourcesOnly=Solo le risorse del team di progetto
|
||||
Text.Sort=Ordina
|
||||
Text.Task=Attività
|
||||
Text.TaskDependency=Dipendenza attività
|
||||
Text.Tasks=Attività
|
||||
Text.Task=Attività
|
||||
Text.TaskDependency=Dipendenza attività
|
||||
Text.Tasks=Attività
|
||||
Text.ThisProject=Questo progetto
|
||||
Text.To=A
|
||||
Text.Type=Tipo
|
||||
|
@ -1069,7 +1073,7 @@ Text.reverseScheduled=Pianificazione inversa
|
|||
Text.rightClickSelectToSpreadsheet=Tasto destro per selezionare o rinominare le tabelle die tempi
|
||||
Text.rightClickToInsertRemoveColumns=Tasto destro per inserire o nascondere le colonne
|
||||
Text.successor=successore
|
||||
Text.taskHierarchy=Gerarchia attività:
|
||||
Text.taskHierarchy=Gerarchia attività:
|
||||
Text.welcomeSubject=Benvenuti in Projects On Demand
|
||||
Text.welcomeToPod=Benvenuti in ProjectLibre
|
||||
Text.work=lavoro
|
||||
|
@ -1122,49 +1126,49 @@ Units.year.plural=y|yrs|anni|y
|
|||
Units.year.singular=y|yr|anno|y
|
||||
UpdateProjectDialogBox.EntireProject=Intero progetti
|
||||
UpdateProjectDialogBox.For=Per:
|
||||
UpdateProjectDialogBox.RescheduleCompletedWorkToStartAfter=\ Ripianifica il lavoro rimanente dopo
|
||||
UpdateProjectDialogBox.SelectedTasks=\ Attività selezionate
|
||||
UpdateProjectDialogBox.SetZeroHundred=Aggiusta la percentuale di completamento in accordo con le date di scadenza
|
||||
UpdateProjectDialogBox.SetZeroOrHundredOnly=E' possibile aggiustare e completare esclusivamente le attività che finiscono con una data
|
||||
UpdateProjectDialogBox.RescheduleCompletedWorkToStartAfter=\ Ripianifica il lavoro rimanente a partire dal
|
||||
UpdateProjectDialogBox.SelectedTasks=\ Attività selezionate
|
||||
UpdateProjectDialogBox.SetZeroHundred=Imposta le % di completamento tra 0% e 100%
|
||||
UpdateProjectDialogBox.SetZeroOrHundredOnly=Imposta le % di completamento uguali a 0% o 100%
|
||||
UpdateProjectDialogBox.UpdateProject=Aggiorna progetto
|
||||
UpdateProjectDialogBox.UpdateWorkAsCompleteThrough=\ Aggiorna lavoro come completato
|
||||
UpdateProjectDialogBox.UpdateWorkAsCompleteThrough=\ Aggiorna lavoro come completato al
|
||||
UpdateTaskDialog.Actual=Atuale
|
||||
UpdateTaskDialog.Current=Corente
|
||||
UpdateTaskDialog.UpdateTask=Aggiorna attività
|
||||
ValueObjectForIntervalTable.ThatEffectiveDateIsAlreadyInTheTable=Questa data è già presente nella tabella. Per favore si scelga una data differente.
|
||||
UpdateTaskDialog.UpdateTask=Aggiorna attività
|
||||
ValueObjectForIntervalTable.ThatEffectiveDateIsAlreadyInTheTable=Questa data è già presente nella tabella. Per favore si scelga una data differente.
|
||||
ValueObjectForIntervalTable.ThisDateMustBeAfter=Questa data deve essere successiva a quella inserita in precedenza.
|
||||
ValueObjectForIntervalTable.ThisDateMustBeBefore=QUesta data deve essere precedente a quella inserita successivamente.
|
||||
ValueObjectForIntervalTable.YouCannotRemoveTheFirst=Nn è possibile rimuovere la prima data in tabella.
|
||||
ValueObjectForIntervalTable.YouCannotRemoveTheFirst=Nn è possibile rimuovere la prima data in tabella.
|
||||
WelcomeDialog.WhatWouldYouLikeToDo=Cosa si preferisce fare:
|
||||
WorkRangeException.EndMustBeAfterStart=La fine dell'intervallo deve essere superiore all'inizio
|
||||
WorkRangeException.RangeIncomplete=Un intervallo di lavoro deve includere un inizio e una fine
|
||||
WorkRangeException.RangesCannotOverlap=You cannot have overlapping work ranges.
|
||||
WorkRangeException.RangesMustBeOrdered=L?avvio di un intervallo di lavoro deve essere successivo al precedente
|
||||
tip.1.description= E' possibile diventare un membro della community ProjectLibre a http://www.projectlibre.org e si avrà accesso ad aggiornamenti, informazioni ed eventi..
|
||||
tip.1.description= E' possibile diventare un membro della community ProjectLibre a http://www.projectlibre.org e si avrà accesso ad aggiornamenti, informazioni ed eventi..
|
||||
tip.1.name=ENtra nella community ProjectLibre
|
||||
tip.2.description= E' possibile utilizzare il tasto destro sul Gannt, sulle celle, sulle intestazioni, e sull'angolo superiore sinistro della tabella per accedere al menu dove si potranno cambiare le viste.
|
||||
tip.2.name=Modifica Viste
|
||||
tip.3.description=E' possibile contribuire allo sviluppo di ProjectLibre! Stiamo cercando traduttori e sviluppatori per rendere ProjectLibre sempre migliore. Contatta partners@projectlibre.org.
|
||||
tip.3.name=Contribuisci a ProjectLibre
|
||||
tip.4.description=L'istogramma e il grafico sono dinamici e dipendono dalle attività selezionate.
|
||||
tip.4.description=L'istogramma e il grafico sono dinamici e dipendono dalle attività selezionate.
|
||||
tip.4.name=rafici dinamici
|
||||
tip.5.description=E' possibile apportare modifiche direttamente sul Diagramma Network (PERT).
|
||||
tip.5.name=Modifica le sezioni del Network
|
||||
tip.6.description=E' possibile indentare le attività per creare una gerarchia nel progetto. Questo sarà riscontrabile anche sulla vista WBS.
|
||||
tip.5.description=E' possibile apportare modifiche direttamente sul Diagramma Logico
|
||||
tip.5.name=Modifica le sezioni del Reticolo Logico
|
||||
tip.6.description=E' possibile indentare le attività per creare una gerarchia nel progetto. Questo sarà riscontrabile anche sulla vista WBS.
|
||||
tip.6.name=Costruisci una gerarchia nel progetto
|
||||
tip.7.description=E' possibile utilizzare il mouse per collegare le attività, estenderle, completarle, muoverle e dividerle.
|
||||
tip.7.name=Funzionalità del mouse
|
||||
tip.8.description=Generalmente si utilizzerà il predefinito FS (Finish-Start) collegamento tra le attività. Qualche volta si potrebbe utilizzare SS e FF, ma il collegamento SF è molto raro. E' possibile modificare il tipo di collegamento cliccandoci sopra. E' anche possibile impostare un ritardo.
|
||||
tip.7.description=E' possibile utilizzare il mouse per collegare le attività, estenderle, completarle, muoverle e dividerle.
|
||||
tip.7.name=Funzionalità del mouse
|
||||
tip.8.description=Generalmente si utilizzerà il predefinito FS (Finish-Start) collegamento tra le attività. Qualche volta si potrebbe utilizzare SS e FF, ma il collegamento SF è molto raro. E' possibile modificare il tipo di collegamento cliccandoci sopra. E' anche possibile impostare un ritardo.
|
||||
tip.8.name=Tipologie di collegamento
|
||||
tip.9.description=E' sempre un'ottima idea salvare una baseline di progetto. ProjectLibre consente di salvarne fino ad 11, le quali si potranno facilmente osservare sul Gantt e utilizzare per l'analisi dell'Earned Value.
|
||||
tip.9.name=Baseline
|
||||
tip.10.description=E' possibile aggiustare la stampa in una sola pagina zoommando (avvicinando/allontanando) il Gannt e ridimensionando o nascondendo le colonne. Utilizzare l'anteprima di stampa per verificare.
|
||||
tip.10.name=Stampa
|
||||
tip.11.description=E' possibile aprire in ProjectLibre anche file creati in MS Project ed è possibile salvarli in formato di compatibilità XML.
|
||||
tip.11.name=Compatibilità con MS Project
|
||||
tip.11.description=E' possibile aprire in ProjectLibre anche file creati in MS Project ed è possibile salvarli in formato di compatibilità XML.
|
||||
tip.11.name=Compatibilità con MS Project
|
||||
tip.12.description=Projectlibre dispone di molti campi definiti dall'utente. Si provi ad utilizzare il tasto destro sull'intestazione delle tabelle...
|
||||
tip.12.name=Campi definiti dall'utente
|
||||
tip.13.description=E' possibile assegnare un calendario ai tasks, alle risorse e ai progetti per tener conto delle diverse festività.
|
||||
tip.13.description=E' possibile assegnare un calendario ai tasks, alle risorse e ai progetti per tener conto delle diverse festività.
|
||||
tip.13.name=Calendari
|
||||
tip.14.description=
|
||||
tip.14.name=
|
||||
|
@ -1177,11 +1181,11 @@ tip.17.name=
|
|||
tip.18.description=
|
||||
tip.18.name=
|
||||
|
||||
Text.badJavaVersion=La corrente versione di Java è la "{0}". Per utilizzare ProjectLibre è necessario Java 1.6 o successivo.
|
||||
Text.badJavaVendor=Il distributore Java è "{0}". Per utilizzare ProjectLibre è necessario avere Sun Java.
|
||||
Text.javaExecutable=La versione di Java Runtime attualmente in uso è {0}.\nSe non si dispone di una versione più recente, è possibile modificarla manualmente modificando la proprietà\n"{1}" nel file auto-detection, "{2}".\nAltrimenti, per eseguire nuovamente l'individuzione automatica è possibile rimuovere "{2}".
|
||||
Text.badJavaVersion=La corrente versione di Java è la "{0}". Per utilizzare ProjectLibre è necessario Java 1.6 o successivo.
|
||||
Text.badJavaVendor=Il distributore Java è "{0}". Per utilizzare ProjectLibre è necessario avere Sun Java.
|
||||
Text.javaExecutable=La versione di Java Runtime attualmente in uso è {0}.\nSe non si dispone di una versione più recente, è possibile modificarla manualmente modificando la proprietà\n"{1}" nel file auto-detection, "{2}".\nAltrimenti, per eseguire nuovamente l'individuzione automatica è possibile rimuovere "{2}".
|
||||
|
||||
Text.newVersion=Una nuova versione {0} di ProjectLibre è disponibile.\nLa versione corrente è la {1}.\nSi desidera collegarsi adesso alla pagina di download per aggiornarla?
|
||||
Text.newVersion=Una nuova versione {0} di ProjectLibre è disponibile.\nLa versione corrente è la {1}.\nSi desidera collegarsi adesso alla pagina di download per aggiornarla?
|
||||
|
||||
TipOfTheDay.dialogTitle=Suggerimento del giorno
|
||||
TipOfTheDay.didYouKnowText=Sapevi che...
|
||||
|
@ -1191,15 +1195,15 @@ TipOfTheDay.nextTipText=Successivo >
|
|||
TipOfTheDay.closeText=Close
|
||||
|
||||
|
||||
Warn.lockMessage = Il progetto è stato bloccato da {0}. Si vuole ugualmente aprire il file in modalità sola-lettura?
|
||||
Warn.lockMessage = Il progetto è stato bloccato da {0}. Si vuole ugualmente aprire il file in modalità sola-lettura?
|
||||
|
||||
#added 14/2/08
|
||||
Filter.StartingWithinWeek=Partenza entro una settimana
|
||||
Filter.StartingWithinTwoWeeks=Partenza entro due settimane
|
||||
Filter.LateStarting=Partenza in ritardo
|
||||
|
||||
Warn.resourcePoolOpen=Non è possibile aprire un altro progetto mentre è aperto il pool delle risorse.
|
||||
Warn.resourcePoolCannotOpen=<html><font color="red">Non è possibile aprire il pool delle risorse mentre è aperto un altro progetto.</font></html>
|
||||
Warn.resourcePoolOpen=Non è possibile aprire un altro progetto mentre è aperto il pool delle risorse.
|
||||
Warn.resourcePoolCannotOpen=<html><font color="red">Non è possibile aprire il pool delle risorse mentre è aperto un altro progetto.</font></html>
|
||||
Warn.fileNotFound=File non trovato
|
||||
|
||||
Text.donateMessage=<html>ProjectLibre is provided free of charge. There are no strings attached, and it saves you the $999.99 list price of commercial project management software. We do ask our users to consider voluntary contributions via PayPal.</html>
|
||||
|
@ -1213,7 +1217,7 @@ Text.ShortTitle=ProjectLibre
|
|||
|
||||
Text.doNotShowAgain=Non mostrare nuovamente questo messaggio
|
||||
|
||||
Warn.saveXML=E' consigliato utilizzare sempre il formato XML per evitare perdite di dati nella portabilità con altre applicazioni.\nSi desidera procedere comunque?
|
||||
Warn.saveXML=E' consigliato utilizzare sempre il formato XML per evitare perdite di dati nella portabilità con altre applicazioni.\nSi desidera procedere comunque?
|
||||
|
||||
Text.rightClickForOptions=Tasto destro per le opzioni
|
||||
T_OPEN_TXT=Apri
|
||||
|
@ -1236,3 +1240,6 @@ T_CANCEL=Annulla
|
|||
T_SAVE=Salva
|
||||
T_REFRESH=Aggiorna
|
||||
T_VIEW=Visualizza
|
||||
|
||||
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
1236
projectlibre_core/src/com/projectlibre1/strings/client_th.properties
Normal file
1236
projectlibre_core/src/com/projectlibre1/strings/client_th.properties
Normal file
File diff suppressed because it is too large
Load diff
1303
projectlibre_core/src/com/projectlibre1/strings/client_vi.properties
Normal file
1303
projectlibre_core/src/com/projectlibre1/strings/client_vi.properties
Normal file
File diff suppressed because it is too large
Load diff
1248
projectlibre_core/src/com/projectlibre1/strings/client_zh.properties
Normal file
1248
projectlibre_core/src/com/projectlibre1/strings/client_zh.properties
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1220,3 +1220,6 @@ Text.rightClickForOptions=Right click for options
|
|||
|
||||
|
||||
Message.unableToLaunchBrowser=Error. Unable to launch web browser
|
||||
|
||||
Text.Locale=Locale
|
||||
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="var" path="JUNIT_HOME/junit.jar"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/jasperreports/bsh.jar"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/jasperreports/jasperreports.jar"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/jasperreports/jdt-compiler.jar"/>
|
||||
<classpathentry combineaccessrules="false" kind="src" path="/projectlibre_contrib"/>
|
||||
<classpathentry combineaccessrules="false" kind="src" path="/projectlibre_core"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/commons-collections.jar"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/itext.jar"/>
|
||||
<classpathentry kind="lib" path="/projectlibre_contrib/lib/trident-6.2.jar"/>
|
||||
<classpathentry combineaccessrules="false" exported="true" kind="src" path="/projectlibre_contrib"/>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.compliance=1.8
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
||||
org.eclipse.jdt.core.compiler.source=1.8
|
||||
|
|
|
@ -228,6 +228,8 @@ public class ProjectLibreRibbonUI extends RibbonUI {
|
|||
|
||||
protected int fileSelectorOffsetX = 300;
|
||||
|
||||
protected int languageSelectorWidth = 50;
|
||||
|
||||
protected int projectViewsOffsetX = 600;
|
||||
|
||||
protected int heightToReduce = 20;
|
||||
|
@ -490,6 +492,8 @@ public class ProjectLibreRibbonUI extends RibbonUI {
|
|||
|
||||
ribbon.add(ribbon.getFileSelector());
|
||||
|
||||
ribbon.add(ribbon.getLanguageSelector());
|
||||
|
||||
ribbon.add(ribbon.getProjectViews());
|
||||
|
||||
// ribbon.addMouseListener(new MouseAdapter() { //repaint to remove the undo-redo button glichtes - SD
|
||||
|
@ -561,6 +565,9 @@ public class ProjectLibreRibbonUI extends RibbonUI {
|
|||
if (ribbon.getFileSelector() != null)
|
||||
ribbon.remove(ribbon.getFileSelector());
|
||||
|
||||
if (ribbon.getLanguageSelector() != null)
|
||||
ribbon.remove(ribbon.getLanguageSelector());
|
||||
|
||||
if (ribbon.getProjectViews() != null)
|
||||
ribbon.remove(ribbon.getProjectViews());
|
||||
|
||||
|
@ -948,8 +955,14 @@ public class ProjectLibreRibbonUI extends RibbonUI {
|
|||
taskBarPanel.setBounds(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
|
||||
ribbon.getFileSelector().setBounds(fileSelectorOffsetX, ins.top,
|
||||
width - ins.right - fileSelectorOffsetX, taskbarHeight);
|
||||
width - ins.right - fileSelectorOffsetX - languageSelectorWidth, taskbarHeight);
|
||||
|
||||
if (languageSelectorWidth>0)
|
||||
ribbon.getLanguageSelector().setBounds(width - ins.right - languageSelectorWidth , ins.top,
|
||||
languageSelectorWidth, taskbarHeight);
|
||||
|
||||
// projectViews.setBounds(width-ins.right-300, ins.top, 280,
|
||||
// taskbarHeight);
|
||||
|
||||
|
|
893
projectlibre_ui/src/com/projectlibre1/dialog/LocaleDialog.java
Normal file
893
projectlibre_ui/src/com/projectlibre1/dialog/LocaleDialog.java
Normal file
|
@ -0,0 +1,893 @@
|
|||
/*******************************************************************************
|
||||
* The contents of this file are subject to the Common Public Attribution License
|
||||
* Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
* License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
* software over a computer network and provide for limited attribution for the
|
||||
* Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
* with Exhibit B.
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
* specific language governing rights and limitations under the License. The
|
||||
* Original Code is ProjectLibre. The Original Developer is the Initial Developer
|
||||
* and is ProjectLibre Inc. All portions of the code written by ProjectLibre are
|
||||
* Copyright (c) 2012-2019. All Rights Reserved. All portions of the code written by
|
||||
* ProjectLibre are Copyright (c) 2012-2019. All Rights Reserved. Contributor
|
||||
* ProjectLibre, Inc.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
* the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
* If you wish to allow use of your version of this file only under the terms of the
|
||||
* ProjectLibre License and not to allow others to use your version of this file
|
||||
* under the CPAL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the ProjectLibre
|
||||
* License. If you do not delete the provisions above, a recipient may use your
|
||||
* version of this file under either the CPAL or the ProjectLibre Licenses.
|
||||
*
|
||||
*
|
||||
* [NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
* in the Source Code files of the Original Code. You should use the text of this
|
||||
* Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
* Modifications.]
|
||||
*
|
||||
* EXHIBIT B. Attribution Information for ProjectLibre required
|
||||
*
|
||||
* Attribution Copyright Notice: Copyright (c) 2012-2019, ProjectLibre, Inc.
|
||||
* Attribution Phrase (not exceeding 10 words):
|
||||
* ProjectLibre, open source project management software.
|
||||
* Attribution URL: http://www.projectlibre.com
|
||||
* Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
* alternatives listed on http://www.projectlibre.com/logo
|
||||
*
|
||||
* Display of Attribution Information is required in Larger Works which are defined
|
||||
* in the CPAL as a work which combines Covered Code or portions thereof with code
|
||||
* not governed by the terms of the CPAL. However, in addition to the other notice
|
||||
* obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
* distributed must, as a form of attribution of the original author, include on
|
||||
* each user interface screen the "ProjectLibre" logo visible to all users.
|
||||
* The ProjectLibre logo should be located horizontally aligned with the menu bar
|
||||
* and left justified on the top left of the screen adjacent to the File menu. The
|
||||
* logo must be at least 144 x 31 pixels. When users click on the "ProjectLibre"
|
||||
* logo it must direct them back to http://www.projectlibre.com.
|
||||
*******************************************************************************/
|
||||
package com.projectlibre1.dialog;
|
||||
|
||||
import java.awt.BorderLayout;
|
||||
import java.awt.Color;
|
||||
import java.awt.Frame;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
import java.io.FileFilter;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.OutputStream;
|
||||
import java.net.URL;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.CharBuffer;
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.CharsetEncoder;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Enumeration;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.TreeMap;
|
||||
import java.util.TreeSet;
|
||||
import java.util.Vector;
|
||||
import java.util.prefs.Preferences;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import javax.swing.ButtonGroup;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JCheckBox;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JComponent;
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JList;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JRadioButton;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTable;
|
||||
import javax.swing.JTextArea;
|
||||
import javax.swing.JTextField;
|
||||
import javax.swing.JTextPane;
|
||||
import javax.swing.event.DocumentEvent;
|
||||
import javax.swing.event.DocumentListener;
|
||||
import javax.swing.event.TableModelListener;
|
||||
import javax.swing.filechooser.FileSystemView;
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
import javax.swing.table.TableModel;
|
||||
import javax.swing.text.AttributeSet;
|
||||
import javax.swing.text.BadLocationException;
|
||||
import javax.swing.text.DefaultStyledDocument;
|
||||
import javax.swing.text.SimpleAttributeSet;
|
||||
import javax.swing.text.StyleConstants;
|
||||
import javax.swing.text.StyleContext;
|
||||
import javax.swing.text.rtf.RTFEditorKit;
|
||||
|
||||
import org.apache.commons.lang.StringEscapeUtils;
|
||||
|
||||
import com.jgoodies.forms.builder.DefaultFormBuilder;
|
||||
import com.jgoodies.forms.layout.CellConstraints;
|
||||
import com.jgoodies.forms.layout.FormLayout;
|
||||
import com.projectlibre.ui.ribbon.ProjectLibreRibbonUI;
|
||||
import com.projectlibre1.pm.graphic.frames.GraphicManager;
|
||||
import com.projectlibre1.configuration.Settings;
|
||||
import com.projectlibre1.pm.snapshot.SnapshottableImpl;
|
||||
import com.projectlibre1.preference.ConfigurationFile;
|
||||
import com.projectlibre1.strings.Messages;
|
||||
import com.projectlibre1.util.Alert;
|
||||
|
||||
import net.sf.mpxj.common.RtfHelper;
|
||||
|
||||
public final class LocaleDialog extends AbstractDialog {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
JComboBox<String> languageCombo;
|
||||
JComboBox<Country> countryCombo;
|
||||
JCheckBox externalCheckbox=new JCheckBox(Messages.getString("Text.ExternalLocaleUse"));
|
||||
JTextField directoryField=new JTextField();
|
||||
JButton directorySetButton=new JButton(Messages.getString("Text.ExternalLocaleDirectorySet"));
|
||||
JButton directoryUpdateButton=new JButton(Messages.getString("Text.ExternalLocaleDirectoryUpdate"));
|
||||
JButton directoryExportButton=new JButton(Messages.getString("Text.ExternalLocaleDirectoryExport"));
|
||||
JTextPane messageArea;
|
||||
JTable externalList;
|
||||
AbstractTableModel externalListModel;
|
||||
String[] externalListColumns={"code", "client.properties", "menu.properties"};
|
||||
|
||||
ArrayList<LanguageProperties> files=new ArrayList<LanguageProperties>();
|
||||
|
||||
public enum FileStatus {
|
||||
OK(Messages.getString("LocaleDialog.FileStatusOk")),
|
||||
MISSING(Messages.getString("LocaleDialog.FileStatusMissing")),
|
||||
ERROR(Messages.getString("LocaleDialog.FileStatusFormatError"));
|
||||
|
||||
public final String message;
|
||||
|
||||
private FileStatus(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
class LanguageProperties implements Comparable<String>{
|
||||
String code;
|
||||
File client;
|
||||
FileStatus clientStatus;
|
||||
File menu;
|
||||
FileStatus menuStatus;
|
||||
|
||||
|
||||
/**
|
||||
* @param code
|
||||
* @param client
|
||||
* @param clientStatus
|
||||
* @param menu
|
||||
* @param menuStatus
|
||||
*/
|
||||
public LanguageProperties(String code, File client, FileStatus clientStatus, File menu, FileStatus menuStatus) {
|
||||
super();
|
||||
this.code = code;
|
||||
this.client = client;
|
||||
this.clientStatus = clientStatus;
|
||||
this.menu = menu;
|
||||
this.menuStatus = menuStatus;
|
||||
}
|
||||
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
public void setCode(String code) {
|
||||
this.code = code;
|
||||
}
|
||||
public File getClient() {
|
||||
return client;
|
||||
}
|
||||
public void setClient(File client) {
|
||||
this.client = client;
|
||||
}
|
||||
public File getMenu() {
|
||||
return menu;
|
||||
}
|
||||
public void setMenu(File menu) {
|
||||
this.menu = menu;
|
||||
}
|
||||
|
||||
public FileStatus getClientStatus() {
|
||||
return clientStatus;
|
||||
}
|
||||
public void setClientStatus(FileStatus clientStatus) {
|
||||
this.clientStatus = clientStatus;
|
||||
}
|
||||
public FileStatus getMenuStatus() {
|
||||
return menuStatus;
|
||||
}
|
||||
public void setMenuStatus(FileStatus menuStatus) {
|
||||
this.menuStatus = menuStatus;
|
||||
}
|
||||
@Override
|
||||
public int compareTo(String o) {
|
||||
return code.compareTo(o);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
String[] slocales=Settings.LANGUAGES.split(";");
|
||||
Set<String> allLocales=new TreeSet();
|
||||
Map<String, String> transOri=new HashMap<String, String>();
|
||||
Map<String, String> oriTrans=new HashMap<String, String>();
|
||||
|
||||
|
||||
protected boolean bind(boolean get) {
|
||||
Preferences pref=Preferences.userNodeForPackage(ConfigurationFile.class);
|
||||
if (get) {
|
||||
updateLocales(true);
|
||||
boolean custom=pref.getBoolean("useExternalLocales",false);
|
||||
externalCheckbox.setSelected(custom);
|
||||
directoryField.setEnabled(custom);
|
||||
directorySetButton.setEnabled(custom);
|
||||
directoryUpdateButton.setEnabled(custom);
|
||||
directoryExportButton.setEnabled(custom);
|
||||
|
||||
directoryField.setText(pref.get("externalLocalesDirectory",""));
|
||||
} else {
|
||||
String language=(String)languageCombo.getSelectedItem();
|
||||
String country=((Country)countryCombo.getSelectedItem()).getCode();
|
||||
String trans=transOri.get(language);
|
||||
String code=trans==null?language:trans;
|
||||
if (!"".equals(country))
|
||||
code+="_"+country;
|
||||
pref.put("locale",code);
|
||||
pref.putBoolean("useExternalLocales", externalCheckbox.isSelected());
|
||||
pref.put("externalLocalesDirectory", directoryField.getText());
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
static class Country implements Comparable<Country>{
|
||||
String code;
|
||||
String name;
|
||||
public Country() {
|
||||
super();
|
||||
this.code = "";
|
||||
this.name = "";
|
||||
}
|
||||
/**
|
||||
* @param code
|
||||
* @param name
|
||||
*/
|
||||
public Country(String code, String name) {
|
||||
super();
|
||||
this.code = code;
|
||||
this.name = name;
|
||||
}
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
public void setCode(String code) {
|
||||
this.code = code;
|
||||
}
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return code.hashCode();
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return name.toString();
|
||||
}
|
||||
@Override
|
||||
public int compareTo(Country o) {
|
||||
return code.compareTo(o.getCode());
|
||||
}
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o==null || ! (o instanceof Country))
|
||||
return false;
|
||||
else return code.equals(((Country)o).getCode());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static final Country DEFAULT_COUNTRY=new Country();
|
||||
|
||||
|
||||
public void updateLocales(boolean init) {
|
||||
String currentLocaleCode=Preferences.userNodeForPackage(ConfigurationFile.class).get("locale","default");
|
||||
String currentLanguage;
|
||||
Country currentCountry;
|
||||
if ("default".equals(currentLocaleCode)) {
|
||||
currentLanguage=currentLocaleCode;
|
||||
currentCountry=DEFAULT_COUNTRY;
|
||||
}else {
|
||||
String[] codes=ConfigurationFile.getLocaleCodes(currentLocaleCode);
|
||||
currentLanguage=codes[0];
|
||||
String code=codes[1];
|
||||
if (code==null ||
|
||||
"".equals(code))
|
||||
currentCountry=DEFAULT_COUNTRY;
|
||||
else {
|
||||
Locale locale = new Locale("en", code);
|
||||
currentCountry=new Country(code, locale.getDisplayCountry(locale));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (init/*countryCombo.getItemCount()==0*/) { //only set once
|
||||
TreeSet<Country> countrySet=new TreeSet<Country>();
|
||||
|
||||
countrySet.add(DEFAULT_COUNTRY);
|
||||
String[] countryCodes=Locale.getISOCountries();
|
||||
for (String countryCode: countryCodes) {
|
||||
Locale locale = new Locale("en", countryCode);
|
||||
countrySet.add(new Country(countryCode, locale.getDisplayCountry(locale)));
|
||||
}
|
||||
for (Country country: countrySet) {
|
||||
countryCombo.addItem(country);
|
||||
}
|
||||
countryCombo.setSelectedItem(currentCountry);
|
||||
}
|
||||
|
||||
|
||||
for (String locale:slocales) {
|
||||
String trans;
|
||||
if ("default".equals(locale))
|
||||
trans=Messages.getString("Text.DefaultLocale");
|
||||
else trans=locale;
|
||||
oriTrans.put(locale, trans);
|
||||
transOri.put(trans, locale);
|
||||
}
|
||||
String selectedItem;
|
||||
if (init){
|
||||
String trans=oriTrans.get(currentLanguage);
|
||||
selectedItem=trans==null? currentLanguage: trans;
|
||||
}else selectedItem=(String)languageCombo.getSelectedItem();
|
||||
|
||||
|
||||
|
||||
|
||||
allLocales.clear();
|
||||
languageCombo.removeAllItems();
|
||||
|
||||
|
||||
|
||||
//add custom locales
|
||||
for (LanguageProperties file:files) {
|
||||
if (file.getClientStatus()==FileStatus.OK ||
|
||||
file.getMenuStatus()==FileStatus.OK)
|
||||
allLocales.add(file.code);
|
||||
}
|
||||
|
||||
//add preference locale if missing
|
||||
|
||||
boolean found=false;
|
||||
String defaultLocale=null;
|
||||
for (String locale:slocales) {
|
||||
if ("default".equals(locale)) {
|
||||
defaultLocale=locale;
|
||||
continue;
|
||||
}
|
||||
allLocales.add(locale);
|
||||
if (locale.equals(currentLanguage)) {
|
||||
found=true;
|
||||
}
|
||||
}
|
||||
if (!found)
|
||||
allLocales.add(currentLanguage);
|
||||
|
||||
|
||||
if (defaultLocale!=null)
|
||||
languageCombo.addItem(oriTrans.get(defaultLocale));
|
||||
for (String locale: allLocales) {
|
||||
String trans=oriTrans.get(locale);
|
||||
if (!"default".equals(locale))
|
||||
languageCombo.addItem(trans==null?locale:trans);
|
||||
}
|
||||
|
||||
languageCombo.setSelectedItem(selectedItem);
|
||||
|
||||
}
|
||||
|
||||
public static LocaleDialog getInstance(GraphicManager graphicManager) {
|
||||
LocaleDialog instance =null;
|
||||
if (instance == null) {
|
||||
instance = new LocaleDialog(graphicManager.getFrame());
|
||||
} else
|
||||
instance.setTitle(Messages.getString("Text.LocaleDialog"));
|
||||
instance.addDocHelp("Locale_Dialog");
|
||||
|
||||
return instance;
|
||||
}
|
||||
|
||||
private LocaleDialog(Frame owner) {
|
||||
super(owner, "", true);
|
||||
languageCombo=new JComboBox();
|
||||
countryCombo=new JComboBox();
|
||||
|
||||
messageArea=new JTextPane();
|
||||
messageArea.setBackground(null);
|
||||
|
||||
|
||||
externalList=new JTable();
|
||||
}
|
||||
|
||||
|
||||
protected void displayMessage(String message) {
|
||||
StyleContext sc = StyleContext.getDefaultStyleContext();
|
||||
AttributeSet attr = sc.addAttribute(SimpleAttributeSet.EMPTY, StyleConstants.Foreground, Color.RED);
|
||||
attr = sc.addAttribute(attr, StyleConstants.Alignment, StyleConstants.ALIGN_JUSTIFIED);
|
||||
attr = sc.addAttribute(attr, StyleConstants.Italic, true);
|
||||
|
||||
|
||||
messageArea.setCaretPosition(0);
|
||||
messageArea.selectAll();
|
||||
messageArea.setCharacterAttributes(attr, false);
|
||||
messageArea.replaceSelection(message);
|
||||
}
|
||||
protected void displayChangeMessage() {
|
||||
displayMessage(Messages.getString("Message.localeChange"));
|
||||
}
|
||||
|
||||
protected void initControls() {
|
||||
bind(true);
|
||||
languageCombo.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
displayChangeMessage();
|
||||
}
|
||||
});
|
||||
countryCombo.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
displayChangeMessage();
|
||||
}
|
||||
});
|
||||
externalCheckbox.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
directoryField.setEnabled(externalCheckbox.isSelected());
|
||||
directorySetButton.setEnabled(externalCheckbox.isSelected());
|
||||
directoryUpdateButton.setEnabled(externalCheckbox.isSelected());
|
||||
directoryExportButton.setEnabled(externalCheckbox.isSelected());
|
||||
displayChangeMessage();
|
||||
}
|
||||
});
|
||||
directoryField.getDocument().addDocumentListener(new DocumentListener() {
|
||||
|
||||
@Override
|
||||
public void removeUpdate(DocumentEvent e) {
|
||||
displayChangeMessage();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertUpdate(DocumentEvent e) {
|
||||
displayChangeMessage();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void changedUpdate(DocumentEvent e) {
|
||||
displayChangeMessage();
|
||||
}
|
||||
});
|
||||
|
||||
directorySetButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
|
||||
String spath=directoryField.getText();
|
||||
File path;
|
||||
if (spath==null || spath=="")
|
||||
path=FileSystemView.getFileSystemView().getHomeDirectory();
|
||||
else {
|
||||
path=new File(spath);
|
||||
if (!path.isDirectory())
|
||||
path=FileSystemView.getFileSystemView().getHomeDirectory();
|
||||
}
|
||||
JFileChooser fileChooser = new JFileChooser(path);
|
||||
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
|
||||
if (fileChooser.showOpenDialog(LocaleDialog.this) == JFileChooser.APPROVE_OPTION) {
|
||||
displayChangeMessage();
|
||||
File selectedFile = fileChooser.getSelectedFile();
|
||||
directoryField.setText(selectedFile.getPath());
|
||||
refreshFiles();
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
directoryUpdateButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
displayChangeMessage();
|
||||
refreshFiles();
|
||||
}
|
||||
});
|
||||
|
||||
directoryExportButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
displayChangeMessage();
|
||||
refreshExportFiles();
|
||||
}
|
||||
});
|
||||
|
||||
externalListModel=new AbstractTableModel() {
|
||||
@Override
|
||||
public String getColumnName(int col) {
|
||||
return externalListColumns[col];
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getValueAt(int row, int col) {
|
||||
if (row<0 ||
|
||||
col<0 ||
|
||||
row>=getRowCount() ||
|
||||
col>=getColumnCount())
|
||||
return null;
|
||||
LanguageProperties prop=files.get(row);
|
||||
if (col==0)
|
||||
return prop.getCode();
|
||||
else if (col==1)
|
||||
return prop.getClientStatus();
|
||||
else return prop.getMenuStatus();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getRowCount() {
|
||||
return files.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getColumnCount() {
|
||||
return 3;
|
||||
}
|
||||
};
|
||||
externalList.setModel(externalListModel);
|
||||
externalList.setEnabled(false);
|
||||
// refreshFiles();
|
||||
}
|
||||
|
||||
public void exportResourceFile(String packageDir, String file) {
|
||||
File generatedDir=ConfigurationFile.getGeneratedDirectory(directoryField.getText());
|
||||
if (generatedDir==null)
|
||||
return;
|
||||
|
||||
ClassLoader cl = getClass().getClassLoader();
|
||||
try {
|
||||
InputStream in = cl.getResourceAsStream(packageDir+"/"+file+".properties");
|
||||
if (in == null)
|
||||
throw new FileNotFoundException();
|
||||
|
||||
byte[] buf = new byte[in.available()];
|
||||
in.read(buf);
|
||||
File target = new File(generatedDir,file+".properties");
|
||||
OutputStream out = new FileOutputStream(target);
|
||||
out.write(buf);
|
||||
out.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void exportResourceFileUTF8(String packageDir, String file) {
|
||||
File generatedDir=ConfigurationFile.getExportDirectory(directoryField.getText());
|
||||
if (generatedDir==null)
|
||||
return;
|
||||
|
||||
ClassLoader cl = getClass().getClassLoader();
|
||||
try {
|
||||
InputStream in = cl.getResourceAsStream(packageDir+"/"+file+".properties");
|
||||
if (in == null)
|
||||
throw new FileNotFoundException();
|
||||
|
||||
String text=getFileContent(in, "ISO-8859-1",true);
|
||||
File target = new File(generatedDir,file+".txt");
|
||||
FileWriter out = new FileWriter(target);
|
||||
out.write(text);
|
||||
out.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public void refreshFiles() {
|
||||
files.clear();
|
||||
|
||||
File directory=new File(directoryField.getText());
|
||||
if (!directory.isDirectory()) {
|
||||
displayMessage(Messages.getString("Message.badLocaleDirectory"));
|
||||
if (externalListModel!=null)
|
||||
externalListModel.fireTableDataChanged();
|
||||
return;
|
||||
}
|
||||
|
||||
File generated=new File(directory, "import");
|
||||
if (generated.exists()) {
|
||||
if (!generated.isDirectory()) {
|
||||
displayMessage(Messages.getString("Message.badLocaleDirectory"));
|
||||
if (externalListModel!=null)
|
||||
externalListModel.fireTableDataChanged();
|
||||
return;
|
||||
}
|
||||
}else {
|
||||
if (!generated.mkdir()) {
|
||||
displayMessage(Messages.getString("Message.badLocaleDirectory"));
|
||||
if (externalListModel!=null)
|
||||
externalListModel.fireTableDataChanged();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Pattern clientPattern = Pattern.compile("client_([^_]{2,3}(_[^_]{2,3})?(_[^_]{2,3})?)(\\.properties)(\\.([^\\.]*))?$");
|
||||
// Pattern menuPattern = Pattern.compile("menu_([^_]{2,3}(_[^_]{2,3})?(_[^_]{2,3})?)(\\.properties)(\\.([^\\.]*))?$");
|
||||
final Pattern clientPattern = Pattern.compile("client_([^_]{2,3}(_[^_]{2,3})?(_[^_]{2,3})?)(\\.(properties|txt|rtf))$");
|
||||
final Pattern menuPattern = Pattern.compile( "menu_([^_]{2,3}(_[^_]{2,3})?(_[^_]{2,3})?)(\\.(properties|txt|rtf))$");
|
||||
|
||||
|
||||
File[] clientFiles=directory.listFiles(new FileFilter() {
|
||||
@Override
|
||||
public boolean accept(File f) {
|
||||
if (f.isFile() &&
|
||||
clientPattern.matcher(f.getName()).matches())
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
File[] menuFiles=directory.listFiles(new FileFilter() {
|
||||
@Override
|
||||
public boolean accept(File f) {
|
||||
if (f.isFile() &&
|
||||
menuPattern.matcher(f.getName()).matches())
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
exportResourceFile("com/projectlibre1/strings/","client");
|
||||
|
||||
Map<String, LanguageProperties> fileMap=new TreeMap<String, LanguageProperties>();
|
||||
for (File file:clientFiles) {
|
||||
Matcher m = clientPattern.matcher(file.getName());
|
||||
if(m.matches()) {
|
||||
String code=m.group(1);
|
||||
String extension=m.group(5);
|
||||
if (extension==null)
|
||||
continue;
|
||||
File generatedFile=null;
|
||||
generatedFile=convertToPropertyFile(file,new File(generated,"client_"+code+".properties"),extension);
|
||||
if (generatedFile==null)
|
||||
continue;
|
||||
if (fileMap.containsKey(code)) {
|
||||
LanguageProperties p=fileMap.get(code);
|
||||
p.setClient(file);
|
||||
p.setClientStatus(generatedFile==null?
|
||||
FileStatus.ERROR:
|
||||
FileStatus.OK);
|
||||
}else fileMap.put(code, new LanguageProperties(code,
|
||||
file,
|
||||
generatedFile==null?
|
||||
FileStatus.ERROR:
|
||||
FileStatus.OK,
|
||||
null,
|
||||
FileStatus.MISSING));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
exportResourceFile("com/projectlibre1/menu/","menu");
|
||||
|
||||
for (File file:menuFiles) {
|
||||
Matcher m = menuPattern.matcher(file.getName());
|
||||
if(m.matches()) {
|
||||
String code=m.group(1);
|
||||
String extension=m.group(5);
|
||||
if (extension==null)
|
||||
continue;
|
||||
File generatedFile=null;
|
||||
generatedFile=convertToPropertyFile(file,new File(generated,"menu_"+code+".properties"),extension);
|
||||
if (generatedFile==null)
|
||||
continue;
|
||||
if (fileMap.containsKey(code)) {
|
||||
LanguageProperties p=fileMap.get(code);
|
||||
p.setMenu(file);
|
||||
p.setMenuStatus(generatedFile==null?
|
||||
FileStatus.ERROR:
|
||||
FileStatus.OK);
|
||||
}else fileMap.put(code, new LanguageProperties(code,
|
||||
null,
|
||||
FileStatus.MISSING,
|
||||
file,
|
||||
generatedFile==null?
|
||||
FileStatus.ERROR:
|
||||
FileStatus.OK));
|
||||
}
|
||||
}
|
||||
|
||||
files.addAll(fileMap.values());
|
||||
|
||||
updateLocales(false);
|
||||
|
||||
externalListModel.fireTableDataChanged();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void refreshExportFiles() {
|
||||
File directory=new File(directoryField.getText());
|
||||
if (!directory.isDirectory()) {
|
||||
displayMessage(Messages.getString("Message.badLocaleDirectory"));
|
||||
if (externalListModel!=null)
|
||||
externalListModel.fireTableDataChanged();
|
||||
return;
|
||||
}
|
||||
|
||||
File export=new File(directory, "export");
|
||||
if (export.exists()) {
|
||||
if (!export.isDirectory()) {
|
||||
displayMessage(Messages.getString("Message.badLocaleDirectory"));
|
||||
if (externalListModel!=null)
|
||||
externalListModel.fireTableDataChanged();
|
||||
return;
|
||||
}
|
||||
}else {
|
||||
if (!export.mkdir()) {
|
||||
displayMessage(Messages.getString("Message.badLocaleDirectory"));
|
||||
if (externalListModel!=null)
|
||||
externalListModel.fireTableDataChanged();
|
||||
return;
|
||||
}
|
||||
}
|
||||
exportResourceFileUTF8("com/projectlibre1/strings/","client");
|
||||
exportResourceFileUTF8("com/projectlibre1/menu/","menu");
|
||||
for (String locale:slocales) {
|
||||
if ("default".equals(locale))
|
||||
continue;
|
||||
exportResourceFileUTF8("com/projectlibre1/strings/","client_"+locale);
|
||||
exportResourceFileUTF8("com/projectlibre1/menu/","menu_"+locale);
|
||||
}
|
||||
}
|
||||
|
||||
public static String getFileContent(InputStream in,String encoding ,boolean unescape) throws IOException {
|
||||
BufferedReader br =new BufferedReader( new InputStreamReader(in, encoding ));
|
||||
StringBuilder sb = new StringBuilder();
|
||||
String line;
|
||||
while(( line = br.readLine()) != null ) {
|
||||
sb.append( unescape?unescape(line):line );
|
||||
sb.append( '\n' );
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
|
||||
public static String escapeProperties(String text) {
|
||||
// CharsetEncoder targetEncoder = Charset.forName("US-ASCII").newEncoder();
|
||||
CharsetEncoder targetEncoder = Charset.forName("ISO-8859-1").newEncoder();
|
||||
final StringBuilder result = new StringBuilder();
|
||||
for (Character character : text.toCharArray()) {
|
||||
if (targetEncoder.canEncode(character)) {
|
||||
result.append(character);
|
||||
} else {
|
||||
result.append("\\u");
|
||||
result.append(Integer.toHexString(0x10000 | character).substring(1).toUpperCase()); //hack to add leading zeros
|
||||
}
|
||||
}
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
public static String unescape(String text) {
|
||||
text = StringEscapeUtils.unescapeJava(text);
|
||||
return text;
|
||||
}
|
||||
|
||||
public File convertToPropertyFile(File file, File newFile, String type) {
|
||||
try {
|
||||
FileInputStream in = new FileInputStream(file);
|
||||
String text=null;
|
||||
|
||||
if ("rtf".equals(type)) {
|
||||
try {
|
||||
RTFEditorKit kit = new RTFEditorKit();
|
||||
DefaultStyledDocument doc = new DefaultStyledDocument();
|
||||
kit.read(in, doc, 0);
|
||||
text = doc.getText(0, doc.getLength());
|
||||
text=escapeProperties(text);
|
||||
} catch (BadLocationException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
} else if ("txt".equals(type)) {
|
||||
text=getFileContent(in, "UTF-8",false);
|
||||
text=escapeProperties(text);
|
||||
} else {
|
||||
text=getFileContent(in, "ISO-8859-1", false);
|
||||
}
|
||||
if (text==null)
|
||||
return null;
|
||||
|
||||
byte[] outputData = text.getBytes();
|
||||
|
||||
|
||||
FileOutputStream out=new FileOutputStream(newFile);
|
||||
out.write(outputData);
|
||||
out.close();
|
||||
|
||||
return newFile;
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public JComponent createContentPanel() {
|
||||
initControls();
|
||||
FormLayout dLayout = new FormLayout("default, 3dlu, fill:80dlu:grow, 3dlu, default", "p");
|
||||
DefaultFormBuilder dbuilder = new DefaultFormBuilder(dLayout);
|
||||
dbuilder.setDefaultDialogBorder();
|
||||
dbuilder.append(Messages.getString("Text.ExternalLocaleDirectory"));
|
||||
dbuilder.append(directoryField);
|
||||
dbuilder.append(directorySetButton);
|
||||
JComponent directoryPanel=dbuilder.getPanel();
|
||||
|
||||
FormLayout layout = new FormLayout("default, 3dlu, default, 3dlu, default, 3dlu, fill:80dlu:grow",
|
||||
"p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, 100dlu, 20dlu, p");
|
||||
|
||||
DefaultFormBuilder builder = new DefaultFormBuilder(layout);
|
||||
builder.setDefaultDialogBorder();
|
||||
CellConstraints cc = new CellConstraints();
|
||||
builder.append(Messages.getString("Text.Language"));
|
||||
builder.append(languageCombo);
|
||||
builder.nextLine(2);
|
||||
builder.append(Messages.getString("Text.Country"));
|
||||
builder.append(countryCombo);
|
||||
builder.nextLine(2);
|
||||
builder.addSeparator(Messages.getString("Text.ExternalLocale"));
|
||||
builder.nextLine(2);
|
||||
|
||||
builder.add(externalCheckbox,cc.xyw(builder.getColumn(), builder
|
||||
.getRow(), 7));
|
||||
builder.nextLine(2);
|
||||
builder.add(directoryPanel,cc.xyw(builder.getColumn(), builder
|
||||
.getRow(), 7));
|
||||
builder.nextLine(2);
|
||||
builder.append(Messages.getString("Text.Locales"));
|
||||
builder.append(directoryUpdateButton);
|
||||
builder.append(directoryExportButton);
|
||||
builder.nextLine(2);
|
||||
builder.add(new JScrollPane(externalList),cc.xyw(builder.getColumn(), builder
|
||||
.getRow(), 7));
|
||||
builder.nextLine(2);
|
||||
builder.add(messageArea,cc.xyw(builder.getColumn(), builder
|
||||
.getRow(), 7));
|
||||
return builder.getPanel();
|
||||
}
|
||||
}
|
|
@ -80,6 +80,8 @@ public class Main {
|
|||
System.setProperty("projectlibre.projectLibreRunNumber", getProjectLibreRunNumber()+"");
|
||||
System.setProperty("projectlibre.projectLibreFirstRun", getProjectLibreFirstRun()+"");
|
||||
|
||||
// System.setProperty("file.encoding", "UTF-8");
|
||||
|
||||
Environment.setStandAlone(true);
|
||||
String[] formatedArgs;
|
||||
if (args!=null && args.length>0){
|
||||
|
|
|
@ -144,6 +144,7 @@ public interface MenuActionConstants {
|
|||
public static final String ACTION_UPDATE_PROJECT = "UpdateProject";
|
||||
public static final String ACTION_SAVE_BASELINE = "SaveBaseline";
|
||||
public static final String ACTION_CLEAR_BASELINE = "ClearBaseline";
|
||||
public static final String ACTION_LOCALE = "LocaleAction";
|
||||
public static final String ACTION_CALENDAR_OPTIONS = "CalendarOptions";
|
||||
|
||||
|
||||
|
|
|
@ -74,13 +74,12 @@ import javax.swing.JToolBar;
|
|||
|
||||
import org.apache.batik.util.gui.resource.ActionMap;
|
||||
import org.apache.batik.util.gui.resource.ButtonFactory;
|
||||
import org.apache.batik.util.gui.resource.RibbonFactory;
|
||||
import org.pushingpixels.flamingo.api.common.AbstractCommandButton;
|
||||
import org.pushingpixels.flamingo.api.ribbon.RibbonTask;
|
||||
|
||||
import com.projectlibre.ui.ribbon.CustomRibbonBandGenerator;
|
||||
import com.projectlibre1.pm.graphic.TabbedNavigation;
|
||||
import com.projectlibre1.strings.DirectoryClassLoader;
|
||||
import com.projectlibre1.preference.ConfigurationFile;
|
||||
import com.projectlibre1.util.ClassLoaderUtils;
|
||||
import com.projectlibre1.util.Environment;
|
||||
|
||||
|
@ -121,12 +120,10 @@ public class MenuManager {
|
|||
private MenuManager(ActionMap rootActionMap) {
|
||||
this.rootActionMap = rootActionMap;
|
||||
ResourceBundle internalBundle=null,bundle=null;
|
||||
|
||||
if (bundle==null){
|
||||
try{
|
||||
DirectoryClassLoader dir=new DirectoryClassLoader();
|
||||
if (dir.isValid()){
|
||||
bundle=ResourceBundle.getBundle(MENU_BUNDLE_CONF_DIR,Locale.getDefault(),dir);
|
||||
}
|
||||
bundle=ConfigurationFile.getDirectoryBundle(MENU_BUNDLE_CONF_DIR);
|
||||
}catch(Exception e){}
|
||||
if (internalBundle==null) internalBundle = ResourceBundle.getBundle(MENU_INTERNAL_BUNDLE,Locale.getDefault(),ClassLoaderUtils.getLocalClassLoader());
|
||||
if (bundle==null) bundle = ResourceBundle.getBundle(MENU_BUNDLE,Locale.getDefault(),ClassLoaderUtils.getLocalClassLoader());
|
||||
|
|
|
@ -225,4 +225,9 @@ ChooseFilter.tooltip = Filter
|
|||
ChooseSort.tooltip = Sort
|
||||
ChooseGroup.tooltip = Group
|
||||
|
||||
PreferencesRibbonBand.title=Preferences
|
||||
RibbonLocale.text=Locale
|
||||
RibbonLocale.tooltip=Locale...
|
||||
RibbonLocale.mnemonic=L
|
||||
|
||||
|
||||
|
|
|
@ -84,6 +84,7 @@ ClipboardRibbonBand = RibbonPaste.TOP RibbonCopy RibbonCut
|
|||
TaskRibbonBand = RibbonInsert RibbonDelete - RibbonIndent RibbonOutdent - RibbonLink RibbonUnlink - RibbonTaskInformation RibbonChangeWorkingTime RibbonNotes RibbonAssignResources RibbonSaveBaseline RibbonClearBaseline RibbonFind RibbonScrollToTask RibbonUpdateTasks
|
||||
ResourceRibbonBand = RibbonInsert RibbonDelete - RibbonIndent RibbonOutdent - RibbonResourceInformation RibbonChangeWorkingTime RibbonNotes RibbonFind
|
||||
ProjectRibbonBand = RibbonProjects.TOP RibbonProjectInformation RibbonChangeWorkingTime RibbonProjectsDialog RibbonSaveBaseline RibbonClearBaseline RibbonUpdateProject
|
||||
PreferencesRibbonBand = RibbonLocale
|
||||
TaskViewsZoomRibbonBand = RibbonGantt.TOP RibbonNetwork RibbonWBS RibbonTaskUsageDetail RibbonZoomIn RibbonZoomOut
|
||||
ResourceViewsZoomRibbonBand = RibbonResources.TOP RibbonRBS RibbonResourceUsageDetail RibbonZoomIn RibbonZoomOut
|
||||
TaskViewsRibbonBand = RibbonGantt.TOP RibbonNetwork RibbonWBS RibbonTaskUsageDetail
|
||||
|
@ -201,6 +202,8 @@ RibbonSaveBaseline.action = SaveBaselineAction
|
|||
RibbonClearBaseline.type = ITEM
|
||||
RibbonClearBaseline.action = ClearBaselineAction
|
||||
|
||||
RibbonLocale.type=ITEM
|
||||
RibbonLocale.action=LocaleAction
|
||||
|
||||
RibbonGantt.icon =view.gantt
|
||||
RibbonGantt.action =GanttAction
|
||||
|
@ -360,6 +363,7 @@ UpdateTasks.action = UpdateTasksAction
|
|||
UpdateProject.action = UpdateProjectAction
|
||||
SaveBaseline.action = SaveBaselineAction
|
||||
ClearBaseline.action = ClearBaselineAction
|
||||
LocaleAction.action = LocaleAction
|
||||
Organizer.action = OrganizerAction
|
||||
Customize.action = CustomizeAction
|
||||
ScheduleOptions.action = ScheduleOptions
|
||||
|
|
234
projectlibre_ui/src/com/projectlibre1/menu/menu_da.properties
Normal file
234
projectlibre_ui/src/com/projectlibre1/menu/menu_da.properties
Normal file
|
@ -0,0 +1,234 @@
|
|||
#The contents of this file are subject to the Common Public Attribution License
|
||||
#Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
#the License. You may obtain a copy of the License at
|
||||
#http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
#License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
#software over a computer network and provide for limited attribution for the
|
||||
#Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
#with Exhibit B.
|
||||
#
|
||||
#Software distributed under the License is distributed on an "AS IS" basis,
|
||||
#WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
#specific language governing rights and limitations under the License. The
|
||||
#Original Code is ProjectLibre and ProjectLibre.
|
||||
#The Original Developer is the Initial Developer and is both ProjectLibre, Inc and
|
||||
#ProjectLibre Inc. All portions of the code written by ProjectLibre are Copyright (c)
|
||||
#2006, 2008. All Rights Reserved. All portions of the code written by ProjectLibre
|
||||
#are Copyright (c) 2012. All Rights Reserved. Contributors ProjectLibre, Inc. and
|
||||
#ProjectLibre, Inc.
|
||||
#
|
||||
#Alternatively, the contents of this file may be used under the terms of the
|
||||
#ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
#the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
#If you wish to allow use of your version of this file only under the terms of the
|
||||
#ProjectLibre License and not to allow others to use your version of this file under
|
||||
#the CPAL, indicate your decision by deleting the provisions above and replace them
|
||||
#with the notice and other provisions required by the Project Libre License. If you
|
||||
#do not delete the provisions above, a recipient may use your version of this file
|
||||
#under either the CPAL or the ProjectLibre Licenses.
|
||||
#
|
||||
#
|
||||
#[NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
#in the Source Code files of the Original Code. You should use the text of this
|
||||
#Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
#Modifications.]
|
||||
#EXHIBIT B. Attribution Information both ProjectLibre and ProjectLibre required
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2012, ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): ProjectLibre, the updated version of
|
||||
#ProjectLibre
|
||||
#Attribution URL: http://www.projectlibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
#alternatives listed on http://www.projectlibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com. The ProjectLibre logo should be located horizontally
|
||||
#aligned immediately above the ProjectLibre logo and left justified in alignment with the
|
||||
#ProjectLibre logo. The logo must be at least 144 x 31 pixels. When users click on the
|
||||
#"ProjectLibre" logo it must direct them back to http://www.projectlibre.com.
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2006, 2020 ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): Powered by ProjectLibre, an open source
|
||||
#solution from ProjectLibre
|
||||
#Attribution URL: http://www.ProjectLibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: ProjectLibre_logo.png with
|
||||
#alternatives listed on http://www.ProjectLibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. \u00A0The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com.
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
#
|
||||
|
||||
|
||||
ProjectRibbonTask.title=Fil
|
||||
TaskRibbonTask.title=Opgave
|
||||
ResourceRibbonTask.title=Ressource
|
||||
ViewRibbonTask.title=Vis
|
||||
FileRibbonBand.title=Fil
|
||||
PrintRibbonBand.title=Udskriv
|
||||
ClipboardRibbonBand.title=Udklipsholder
|
||||
#EditingRibbonBand.title=Redigering
|
||||
TaskRibbonBand.title=Opgave
|
||||
ResourceRibbonBand.title=Ressource
|
||||
ProjectRibbonBand.title=Projekt
|
||||
TaskViewsZoomRibbonBand.title=Visninger
|
||||
TaskViewsRibbonBand.title=Opgavevisninger
|
||||
ResourceViewsZoomRibbonBand.title=Visninger
|
||||
ResourceViewsRibbonBand.title=Ressourcevisninger
|
||||
OtherViewsRibbonBand.title=Andre visninger
|
||||
SubViewsRibbonBand.title=Del-visninger
|
||||
FiltersRibbonBand.title=Filtre
|
||||
RibbonNewProject.text=Ny
|
||||
RibbonNewProject.tooltip=Nyt projekt
|
||||
RibbonOpenProject.text=Åbn
|
||||
RibbonOpenProject.tooltip=Åbn projekt
|
||||
RibbonSaveProject.text=Gem
|
||||
RibbonSaveProject.tooltip=Gem projekt
|
||||
RibbonSaveProjectAs.text=Gem som
|
||||
RibbonSaveProjectAs.tooltip=Gem dette som et nyt projekt
|
||||
RibbonCloseProject.text=Luk
|
||||
RibbonCloseProject.tooltip=Luk projekt
|
||||
RibbonPrint.text=Udskriv
|
||||
RibbonPrint.tooltip=Udskriv det nuværende dokument.
|
||||
RibbonPrintPreview.text=Forhåndsvisning
|
||||
RibbonPrintPreview.tooltip=Udskrift forhåndsvisning
|
||||
RibbonPDF.text=PDF
|
||||
RibbonPDF.tooltip=PDF
|
||||
RibbonCut.text=Klip
|
||||
RibbonCut.tooltip=Klip
|
||||
RibbonCopy.text=Kopier
|
||||
RibbonCopy.tooltip=Kopier
|
||||
RibbonPaste.text=Indsæt
|
||||
RibbonPaste.tooltip=Indsæt
|
||||
RibbonDelete.text=Slet
|
||||
RibbonDelete.tooltip=Slet
|
||||
RibbonZoomIn.text=Zoom ind
|
||||
RibbonZoomIn.tooltip=Zoom ind
|
||||
RibbonZoomOut.text=Zoom ud
|
||||
RibbonZoomOut.tooltip=Zoom ud
|
||||
RibbonFind.text=Find
|
||||
RibbonFind.tooltip=Find
|
||||
RibbonScrollToTask.text=Scroll til opgave
|
||||
RibbonScrollToTask.tooltip=Scroll til opgave
|
||||
RibbonOutdent.text=Udrykning
|
||||
RibbonOutdent.tooltip=Udrykning
|
||||
RibbonIndent.text=Indrykning
|
||||
RibbonIndent.tooltip=Indrykning
|
||||
RibbonLink.text=Link
|
||||
RibbonLink.tooltip=Link
|
||||
RibbonUnlink.text=Fjern link
|
||||
RibbonUnlink.tooltip=Fjern link
|
||||
RibbonTaskInformation.text=Information
|
||||
RibbonTaskInformation.tooltip=Opgaveinformation
|
||||
RibbonResourceInformation.text=Information
|
||||
RibbonResourceInformation.tooltip=Ressourceinformation
|
||||
RibbonProjectInformation.text=Information
|
||||
RibbonProjectInformation.tooltip=Projektinformation
|
||||
RibbonChangeWorkingTime.text=Kalender
|
||||
RibbonChangeWorkingTime.tooltip=Ændre Arbejdskalender
|
||||
RibbonNotes.text=Noter
|
||||
RibbonNotes.tooltip=Noter...
|
||||
RibbonInsert.text=Indsæt
|
||||
RibbonInsert.tooltip=Indsæt
|
||||
RibbonAssignResources.text=Tildel ressourcer
|
||||
RibbonAssignResources.tooltip=Tildel ressourcer
|
||||
RibbonProjectsDialog.text=Projektdialog
|
||||
RibbonProjectsDialog.tooltip=Projekter
|
||||
RibbonUpdateTasks.text=Opdater
|
||||
RibbonUpdateTasks.tooltip=Opdater opgaver...
|
||||
RibbonUpdateTasks.mnemonic=T
|
||||
RibbonUpdateProject.text=Opdater
|
||||
RibbonUpdateProject.tooltip=Opdater projekt...
|
||||
RibbonUpdateProject.mnemonic=P
|
||||
RibbonSaveBaseline.text=Gem Baseline
|
||||
RibbonSaveBaseline.tooltip=Gem Baseline...
|
||||
RibbonSaveBaseline.mnemonic=S
|
||||
RibbonClearBaseline.text=Ryd Baseline
|
||||
RibbonClearBaseline.tooltip=Ryd Baseline...
|
||||
RibbonClearBaseline.mnemonic=C
|
||||
RibbonGantt.text=Gantt
|
||||
RibbonGantt.tooltip=Gantt
|
||||
RibbonTrackingGantt.text=Sporing Gantt
|
||||
RibbonTrackingGantt.tooltip=Sporing Gantt
|
||||
RibbonTaskUsageDetail.text=Opgaveforbrug
|
||||
RibbonTaskUsageDetail.tooltip=Opgaveforbrug
|
||||
RibbonResourceUsageDetail.text=Ressourceforbrug
|
||||
RibbonResourceUsageDetail.tooltip=Ressourceforbrug
|
||||
RibbonNetwork.text=Netværk
|
||||
RibbonNetwork.tooltip=Netværk
|
||||
RibbonResources.text=Ressourcer
|
||||
RibbonResources.tooltip=Ressourcer
|
||||
RibbonProjects.text=Projekter
|
||||
RibbonProjects.tooltip=Projekter
|
||||
RibbonWBS.text=WBS
|
||||
RibbonWBS.tooltip=WBS
|
||||
RibbonRBS.text=RBS
|
||||
RibbonRBS.tooltip=RBS
|
||||
RibbonReport.text=Rapport
|
||||
RibbonReport.tooltip=Rapport
|
||||
RibbonHistogram.text=Histogram
|
||||
RibbonHistogram.tooltip=Histogram
|
||||
RibbonCharts.text=Diagrammer
|
||||
RibbonCharts.tooltip=Diagrammer
|
||||
RibbonTaskUsage.text=Opgaveforbrug
|
||||
RibbonTaskUsage.tooltip=Opgaveforbrug
|
||||
RibbonResourceUsage.text=Ressourceforbrug
|
||||
RibbonResourceUsage.tooltip=Ressourceforbrug
|
||||
RibbonNoSubWindow.text=Ingen undervindue
|
||||
RibbonNoSubWindow.tooltip=Ingen undervindue
|
||||
RibbonNoTextHistogram.tooltip=Histogram
|
||||
RibbonNoTextCharts.tooltip=Diagrammer
|
||||
RibbonNoTextTaskUsage.tooltip=Opgaveforbrug
|
||||
RibbonNoTextResourceUsage.tooltip=Ressourceforbrug
|
||||
RibbonNoTextNoSubWindow.tooltip=Ingen undervindue
|
||||
RibbonTopBarSaveProject.text=Gem projekt
|
||||
RibbonTopBarSaveProject.tooltip=Gem projekt
|
||||
RibbonTopBarUndo.text=Fortryd
|
||||
RibbonTopBarUndo.tooltip=Fortryd
|
||||
RibbonTopBarRedo.text=Annuller fortryd
|
||||
RibbonTopBarRedo.tooltip=Annuller fortryd
|
||||
PrintPreviewFirst.tooltip=Første side
|
||||
PrintPreviewBack.tooltip=Forrige side
|
||||
PrintPreviewForward.tooltip=Næste side
|
||||
PrintPreviewLast.tooltip=Sidste side
|
||||
PrintPreviewDown.tooltip=Forrige side
|
||||
PrintPreviewUp.tooltip=Næste side
|
||||
PrintPreviewZoomOut.tooltip=Zoom ud
|
||||
PrintPreviewZoomReset.tooltip=Nulstil zoom
|
||||
PrintPreviewZoomIn.tooltip=Zoom ind
|
||||
PrintPreviewFormat.tooltip=Sideopsætning
|
||||
PrintPreviewPrint.tooltip=Udskriv
|
||||
PrintPreviewPDF.tooltip=PDF
|
||||
PrintPreviewLeftView.tooltip=Vis venstre del
|
||||
PrintPreviewRightView.tooltip=Vis højre del
|
||||
Help.text=Hjælp
|
||||
ChooseFilter.tooltip=Filtrér
|
||||
ChooseSort.tooltip=Sortér
|
||||
ChooseGroup.tooltip=Gruppér
|
||||
|
||||
|
233
projectlibre_ui/src/com/projectlibre1/menu/menu_el.properties
Normal file
233
projectlibre_ui/src/com/projectlibre1/menu/menu_el.properties
Normal file
|
@ -0,0 +1,233 @@
|
|||
#The contents of this file are subject to the Common Public Attribution License
|
||||
#Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
#the License. You may obtain a copy of the License at
|
||||
#http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
#License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
#software over a computer network and provide for limited attribution for the
|
||||
#Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
#with Exhibit B.
|
||||
#
|
||||
#Software distributed under the License is distributed on an "AS IS" basis,
|
||||
#WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
#specific language governing rights and limitations under the License. The
|
||||
#Original Code is ProjectLibre and ProjectLibre.
|
||||
#The Original Developer is the Initial Developer and is both ProjectLibre, Inc and
|
||||
#ProjectLibre Inc. All portions of the code written by ProjectLibre are Copyright (c)
|
||||
#2006, 2008. All Rights Reserved. All portions of the code written by ProjectLibre
|
||||
#are Copyright (c) 2012. All Rights Reserved. Contributors ProjectLibre, Inc. and
|
||||
#ProjectLibre, Inc.
|
||||
#
|
||||
#Alternatively, the contents of this file may be used under the terms of the
|
||||
#ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
#the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
#If you wish to allow use of your version of this file only under the terms of the
|
||||
#ProjectLibre License and not to allow others to use your version of this file under
|
||||
#the CPAL, indicate your decision by deleting the provisions above and replace them
|
||||
#with the notice and other provisions required by the Project Libre License. If you
|
||||
#do not delete the provisions above, a recipient may use your version of this file
|
||||
#under either the CPAL or the ProjectLibre Licenses.
|
||||
#
|
||||
#
|
||||
#[NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
#in the Source Code files of the Original Code. You should use the text of this
|
||||
#Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
#Modifications.]
|
||||
#EXHIBIT B. Attribution Information both ProjectLibre and ProjectLibre required
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2012, ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): ProjectLibre, the updated version of
|
||||
#ProjectLibre
|
||||
#Attribution URL: http://www.projectlibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
#alternatives listed on http://www.projectlibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com. The ProjectLibre logo should be located horizontally
|
||||
#aligned immediately above the ProjectLibre logo and left justified in alignment with the
|
||||
#ProjectLibre logo. The logo must be at least 144 x 31 pixels. When users click on the
|
||||
#"ProjectLibre" logo it must direct them back to http://www.projectlibre.com.
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2006, 2020 ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): Powered by ProjectLibre, an open source
|
||||
#solution from ProjectLibre
|
||||
#Attribution URL: http://www.ProjectLibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: ProjectLibre_logo.png with
|
||||
#alternatives listed on http://www.ProjectLibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. \u00A0The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com.
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
#
|
||||
|
||||
ProjectRibbonTask.title=\u0391\u03C1\u03C7\u03B5\u03AF\u03BF
|
||||
TaskRibbonTask.title=\u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1
|
||||
ResourceRibbonTask.title=\u03A0\u03CC\u03C1\u03BF\u03C2
|
||||
ViewRibbonTask.title=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
FileRibbonBand.title=\u0391\u03C1\u03C7\u03B5\u03AF\u03BF
|
||||
PrintRibbonBand.title=\u0395\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7
|
||||
ClipboardRibbonBand.title=\u03A0\u03C1\u03CC\u03C7\u03B5\u03B9\u03C1\u03BF
|
||||
#EditingRibbonBand.title=\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1
|
||||
TaskRibbonBand.title= \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1
|
||||
ResourceRibbonBand.title=\u03A0\u03CC\u03C1\u03BF\u03C2
|
||||
ProjectRibbonBand.title=\u0388\u03C1\u03B3\u03BF
|
||||
TaskViewsZoomRibbonBand.title=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AD\u03C2
|
||||
TaskViewsRibbonBand.title=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AD\u03C2 \u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
ResourceViewsZoomRibbonBand.title=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AD\u03C2
|
||||
ResourceViewsRibbonBand.title=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AD\u03C2 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
OtherViewsRibbonBand.title=\u0386\u03BB\u03BB\u03B5\u03C2 \u03C0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AD\u03C2
|
||||
SubViewsRibbonBand.title=\u03A5\u03C0\u03BF-\u03C0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AD\u03C2
|
||||
FiltersRibbonBand.title=\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1
|
||||
RibbonNewProject.text=\u039D\u03AD\u03BF
|
||||
RibbonNewProject.tooltip=\u039D\u03AD\u03BF \u03AD\u03C1\u03B3\u03BF
|
||||
RibbonOpenProject.text=\u0386\u03BD\u03BF\u03B9\u03B3\u03BC\u03B1
|
||||
RibbonOpenProject.tooltip=\u0386\u03BD\u03BF\u03B9\u03B3\u03BC\u03B1 \u0388\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonSaveProject.text=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7
|
||||
RibbonSaveProject.tooltip=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03AD\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonSaveProjectAs.text=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03C9\u03C2
|
||||
RibbonSaveProjectAs.tooltip=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03C9\u03C2 \u03BD\u03AD\u03BF \u03AD\u03C1\u03B3\u03BF
|
||||
RibbonCloseProject.text=\u039A\u03BB\u03B5\u03AF\u03C3\u03B9\u03BC\u03BF
|
||||
RibbonCloseProject.tooltip=\u039A\u03BB\u03B5\u03AF\u03C3\u03B9\u03BC\u03BF \u03AD\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonPrint.text=\u0395\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7
|
||||
RibbonPrint.tooltip=\u0395\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B5 \u03C4\u03BF \u03C4\u03C1\u03AD\u03C7\u03BF\u03BD \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF
|
||||
RibbonPrintPreview.text=\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7
|
||||
RibbonPrintPreview.tooltip=\u0395\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7\u03C2
|
||||
RibbonPDF.text=PDF
|
||||
RibbonPDF.tooltip=PDF
|
||||
RibbonCut.text=\u0391\u03C0\u03BF\u03BA\u03BF\u03C0\u03AE
|
||||
RibbonCut.tooltip=\u0391\u03C0\u03BF\u03BA\u03BF\u03C0\u03AE
|
||||
RibbonCopy.text=\u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
RibbonCopy.tooltip=\u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
RibbonPaste.text=\u0395\u03C0\u03B9\u03BA\u03CC\u03BB\u03BB\u03B7\u03C3\u03B7
|
||||
RibbonPaste.tooltip=\u0395\u03C0\u03B9\u03BA\u03CC\u03BB\u03BB\u03B7\u03C3\u03B7
|
||||
RibbonDelete.text=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
RibbonDelete.tooltip=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
RibbonZoomIn.text=\u039C\u03B5\u03B3\u03AD\u03B8\u03C5\u03BD\u03C3\u03B7
|
||||
RibbonZoomIn.tooltip=\u039C\u03B5\u03B3\u03AD\u03B8\u03C5\u03BD\u03C3\u03B7
|
||||
RibbonZoomOut.text=\u03A3\u03BC\u03AF\u03BA\u03C1\u03C5\u03BD\u03C3\u03B7
|
||||
RibbonZoomOut.tooltip=\u03A3\u03BC\u03AF\u03BA\u03C1\u03C5\u03BD\u03C3\u03B7
|
||||
RibbonFind.text=\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7
|
||||
RibbonFind.tooltip=\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7
|
||||
RibbonScrollToTask.text=\u03A3\u03BA\u03C1\u03CC\u03BB\u03B1\u03C1\u03B5 \u03C3\u03C4\u03B7\u03BD \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1
|
||||
RibbonScrollToTask.tooltip=\u03A3\u03BA\u03C1\u03CC\u03BB\u03B1\u03C1\u03B5 \u03C3\u03C4\u03B7\u03BD \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1
|
||||
RibbonOutdent.text=\u03A0\u03C1\u03BF\u03B5\u03BE\u03BF\u03C7\u03AE
|
||||
RibbonOutdent.tooltip=\u03A0\u03C1\u03BF\u03B5\u03BE\u03BF\u03C7\u03AE
|
||||
RibbonIndent.text=\u0395\u03C3\u03BF\u03C7\u03AE
|
||||
RibbonIndent.tooltip=\u0395\u03C3\u03BF\u03C7\u03AE
|
||||
RibbonLink.text=\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
RibbonLink.tooltip=\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
RibbonUnlink.text=\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
RibbonUnlink.tooltip=\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
RibbonTaskInformation.text=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B1
|
||||
RibbonTaskInformation.tooltip=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B1 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonResourceInformation.text=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B1
|
||||
RibbonResourceInformation.tooltip=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B1 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
RibbonProjectInformation.text=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B1
|
||||
RibbonProjectInformation.tooltip=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B1 \u0388\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonChangeWorkingTime.text=\u0397\u03BC\u03B5\u03C1\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF
|
||||
RibbonChangeWorkingTime.tooltip=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u0397\u03BC\u03B5\u03C1\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonNotes.text=\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2
|
||||
RibbonNotes.tooltip=\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2
|
||||
RibbonInsert.text=\u0395\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE
|
||||
RibbonInsert.tooltip=\u0395\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE
|
||||
RibbonAssignResources.text=\u0391\u03BD\u03AC\u03B8\u03B5\u03C3\u03B7 \u03A0\u03CC\u03C1\u03C9\u03BD
|
||||
RibbonAssignResources.tooltip=\u0391\u03BD\u03AC\u03B8\u03B5\u03C3\u03B7 \u03A0\u03CC\u03C1\u03C9\u03BD
|
||||
RibbonProjectsDialog.text=\u03A0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF \u0394\u03B9\u03B1\u03BB\u03CC\u03B3\u03BF\u03C5 \u0388\u03C1\u03B3\u03C9\u03BD
|
||||
RibbonProjectsDialog.tooltip=\u0388\u03C1\u03B3\u03B1
|
||||
RibbonUpdateTasks.text=\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7
|
||||
RibbonUpdateTasks.tooltip=\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0395\u03C1\u03B3\u03B1\u03C3\u03B9\u03CE\u03BD
|
||||
RibbonUpdateTasks.mnemonic=T
|
||||
RibbonUpdateProject.text=\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7
|
||||
RibbonUpdateProject.tooltip=\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0388\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonUpdateProject.mnemonic=P
|
||||
RibbonSaveBaseline.text=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u0393\u03C1\u03B1\u03BC\u03BC\u03AE\u03C2 \u0392\u03AC\u03C3\u03B7\u03C2
|
||||
RibbonSaveBaseline.tooltip=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u0393\u03C1\u03B1\u03BC\u03BC\u03AE\u03C2 \u0392\u03AC\u03C3\u03B7\u03C2
|
||||
RibbonSaveBaseline.mnemonic=S
|
||||
RibbonClearBaseline.text=\u0395\u03BA\u03BA\u03B1\u03B8\u03AC\u03C1\u03B9\u03C3\u03B7 \u0393\u03C1\u03B1\u03BC\u03BC\u03AE\u03C2 \u0392\u03AC\u03C3\u03B7\u03C2
|
||||
RibbonClearBaseline.tooltip=\u0395\u03BA\u03BA\u03B1\u03B8\u03AC\u03C1\u03B9\u03C3\u03B7 \u0393\u03C1\u03B1\u03BC\u03BC\u03AE\u03C2 \u0392\u03AC\u03C3\u03B7\u03C2
|
||||
RibbonClearBaseline.mnemonic=C
|
||||
RibbonGantt.text=Gantt
|
||||
RibbonGantt.tooltip=Gantt
|
||||
RibbonTrackingGantt.text=\u03A0\u03B1\u03C1\u03B1\u03BA\u03BF\u03BB\u03BF\u03CD\u03B8\u03B7\u03C3\u03B7 Gantt
|
||||
RibbonTrackingGantt.tooltip=\u03A0\u03B1\u03C1\u03B1\u03BA\u03BF\u03BB\u03BF\u03CD\u03B8\u03B7\u03C3\u03B7 Gantt
|
||||
RibbonTaskUsageDetail.text=\u03A7\u03C1\u03AE\u03C3\u03B7 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonTaskUsageDetail.tooltip=\u03A7\u03C1\u03AE\u03C3\u03B7 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonResourceUsageDetail.text=\u03A7\u03C1\u03AE\u03C3\u03B7 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
RibbonResourceUsageDetail.tooltip=\u03A7\u03C1\u03AE\u03C3\u03B7 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
RibbonNetwork.text=\u0394\u03AF\u03BA\u03C4\u03C5\u03BF
|
||||
RibbonNetwork.tooltip=\u0394\u03AF\u03BA\u03C4\u03C5\u03BF
|
||||
RibbonResources.text=\u03A0\u03CC\u03C1\u03BF\u03B9
|
||||
RibbonResources.tooltip=\u03A0\u03CC\u03C1\u03BF\u03B9
|
||||
RibbonProjects.text=\u0388\u03C1\u03B3\u03B1
|
||||
RibbonProjects.tooltip=\u0388\u03C1\u03B3\u03B1
|
||||
RibbonWBS.text=WBS
|
||||
RibbonWBS.tooltip=WBS
|
||||
RibbonRBS.text=RBS
|
||||
RibbonRBS.tooltip=RBS
|
||||
RibbonReport.text=\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC
|
||||
RibbonReport.tooltip=\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC
|
||||
RibbonHistogram.text=\u0399\u03C3\u03C4\u03CC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1
|
||||
RibbonHistogram.tooltip=\u0399\u03C3\u03C4\u03CC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1
|
||||
RibbonCharts.text=\u0394\u03B9\u03B1\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03B1
|
||||
RibbonCharts.tooltip=\u0394\u03B9\u03B1\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03B1
|
||||
RibbonTaskUsage.text=\u03A7\u03C1\u03AE\u03C3\u03B7 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonTaskUsage.tooltip=\u03A7\u03C1\u03AE\u03C3\u03B7 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonResourceUsage.text=\u03A7\u03C1\u03AE\u03C3\u03B7 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
RibbonResourceUsage.tooltip=\u03A7\u03C1\u03AE\u03C3\u03B7 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
RibbonNoSubWindow.text=\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03C5\u03C0\u03BF-\u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF
|
||||
RibbonNoSubWindow.tooltip=\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03C5\u03C0\u03BF-\u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF
|
||||
RibbonNoTextHistogram.tooltip=\u0399\u03C3\u03C4\u03CC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1
|
||||
RibbonNoTextCharts.tooltip=\u0394\u03B9\u03B1\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03B1
|
||||
RibbonNoTextTaskUsage.tooltip=\u03A7\u03C1\u03AE\u03C3\u03B7 \u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\u03C2
|
||||
RibbonNoTextResourceUsage.tooltip=\u03A7\u03C1\u03AE\u03C3\u03B7 \u03A0\u03CC\u03C1\u03BF\u03C5
|
||||
RibbonNoTextNoSubWindow.tooltip=\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03C5\u03C0\u03BF-\u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF
|
||||
RibbonTopBarSaveProject.text=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03AD\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonTopBarSaveProject.tooltip=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03AD\u03C1\u03B3\u03BF\u03C5
|
||||
RibbonTopBarUndo.text=\u0391\u03BD\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7
|
||||
RibbonTopBarUndo.tooltip=\u0391\u03BD\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7
|
||||
RibbonTopBarRedo.text=\u0395\u03C0\u03B1\u03BD\u03B5\u03BA\u03C4\u03AD\u03BB\u03B5\u03C3\u03B7
|
||||
RibbonTopBarRedo.tooltip=\u0395\u03C0\u03B1\u03BD\u03B5\u03BA\u03C4\u03AD\u03BB\u03B5\u03C3\u03B7
|
||||
PrintPreviewFirst.tooltip=\u03A0\u03C1\u03CE\u03C4\u03B7 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PrintPreviewBack.tooltip=\u03A0\u03C1\u03BF\u03B7\u03B3\u03BF\u03CD\u03BC\u03B5\u03BD\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PrintPreviewForward.tooltip=\u0395\u03C0\u03CC\u03BC\u03B5\u03BD\u03B7 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PrintPreviewLast.tooltip=\u03A4\u03B5\u03BB\u03B5\u03C5\u03C4\u03B1\u03AF\u03B1 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PrintPreviewDown.tooltip=\u03A0\u03C1\u03BF\u03B7\u03B3\u03BF\u03CD\u03BC\u03B5\u03BD\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PrintPreviewUp.tooltip=\u0395\u03C0\u03CC\u03BC\u03B5\u03BD\u03B7 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PrintPreviewZoomOut.tooltip=\u03A3\u03BC\u03AF\u03BA\u03C1\u03C5\u03BD\u03C3\u03B7
|
||||
PrintPreviewZoomReset.tooltip=\u0395\u03C0\u03B1\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u03B6\u03BF\u03C5\u03BC
|
||||
PrintPreviewZoomIn.tooltip=\u039C\u03B5\u03B3\u03AD\u03B8\u03C5\u03BD\u03C3\u03B7
|
||||
PrintPreviewFormat.tooltip=\u03A3\u03C4\u03AE\u03C3\u03B9\u03BC\u03BF \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
PrintPreviewPrint.tooltip=\u0395\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7
|
||||
PrintPreviewPDF.tooltip=PDF
|
||||
PrintPreviewLeftView.tooltip=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 \u03B1\u03C1\u03B9\u03C3\u03C4\u03B5\u03C1\u03BF\u03CD \u03C4\u03BC\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
PrintPreviewRightView.tooltip=\u03A0\u03B1\u03C1\u03BF\u03C5\u03C3\u03AF\u03B1\u03C3\u03B7 \u03B4\u03B5\u03BE\u03B9\u03BF\u03CD \u03C4\u03BC\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
Help.text=\u0392\u03BF\u03AE\u03B8\u03B5\u03B9\u03B1
|
||||
ChooseFilter.tooltip=\u03A6\u03B9\u03BB\u03C4\u03C1\u03AC\u03C1\u03B9\u03C3\u03BC\u03B1
|
||||
ChooseSort.tooltip=\u03A4\u03B1\u03BE\u03B9\u03BD\u03CC\u03BC\u03B7\u03C3\u03B7
|
||||
ChooseGroup.tooltip=\u039F\u03BC\u03B1\u03B4\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7
|
||||
|
||||
|
|
@ -66,18 +66,18 @@
|
|||
#
|
||||
|
||||
ProjectRibbonTask.title = File
|
||||
TaskRibbonTask.title = Attività
|
||||
TaskRibbonTask.title = Attività
|
||||
ResourceRibbonTask.title = Risorsa
|
||||
ViewRibbonTask.title = Visualizza
|
||||
FileRibbonBand.title = File
|
||||
PrintRibbonBand.title = Stampa
|
||||
ClipboardRibbonBand.title = Clipboard
|
||||
ClipboardRibbonBand.title = Clipboard- appunti
|
||||
#EditingRibbonBand.title = Modifica
|
||||
TaskRibbonBand.title = Attività
|
||||
TaskRibbonBand.title = Attività
|
||||
ResourceRibbonBand.title = Risorsa
|
||||
ProjectRibbonBand.title = Progetto
|
||||
TaskViewsZoomRibbonBand.title = Viste
|
||||
TaskViewsRibbonBand.title = Viste attività
|
||||
TaskViewsRibbonBand.title = Viste attività
|
||||
ResourceViewsZoomRibbonBand.title = Viste
|
||||
ResourceViewsRibbonBand.title = Viste risorsa
|
||||
OtherViewsRibbonBand.title = Altre viste
|
||||
|
@ -113,8 +113,8 @@ RibbonZoomOut.text =Zoom indietro
|
|||
RibbonZoomOut.tooltip =Zoom indietro
|
||||
RibbonFind.text =Trova
|
||||
RibbonFind.tooltip = Trova
|
||||
RibbonScrollToTask.text = Scorri fino all'attività
|
||||
RibbonScrollToTask.tooltip = Scorri fino all'attività
|
||||
RibbonScrollToTask.text = Scorri fino all'attività
|
||||
RibbonScrollToTask.tooltip = Scorri fino all'attività
|
||||
RibbonOutdent.text =Diminuisci rientro
|
||||
RibbonOutdent.tooltip =Diminuisci rientro
|
||||
RibbonIndent.text =Aumenta rientro
|
||||
|
@ -124,7 +124,7 @@ RibbonLink.tooltip=Inserisci collegamento
|
|||
RibbonUnlink.text=Elimina collegamento
|
||||
RibbonUnlink.tooltip=Elimina collegamento
|
||||
RibbonTaskInformation.text =Informazioni
|
||||
RibbonTaskInformation.tooltip =Informazioni attività
|
||||
RibbonTaskInformation.tooltip =Informazioni attività
|
||||
RibbonResourceInformation.text =Informazioni
|
||||
RibbonResourceInformation.tooltip =Informazioni risorsa
|
||||
RibbonProjectInformation.text =Informazioni
|
||||
|
@ -140,7 +140,7 @@ RibbonAssignResources.tooltip=Assegna risorse
|
|||
RibbonProjectsDialog.text =Finestra progetti
|
||||
RibbonProjectsDialog.tooltip =Progetti
|
||||
RibbonUpdateTasks.text =Aggiorna
|
||||
RibbonUpdateTasks.tooltip =Aggiorna attività...
|
||||
RibbonUpdateTasks.tooltip =Aggiorna attività...
|
||||
RibbonUpdateTasks.mnemonic = A
|
||||
RibbonUpdateProject.text =Aggiorna
|
||||
RibbonUpdateProject.tooltip =Aggiorna progetto...
|
||||
|
@ -155,12 +155,12 @@ RibbonGantt.text=Gantt
|
|||
RibbonGantt.tooltip=Gantt
|
||||
RibbonTrackingGantt.text=Tracking Gantt
|
||||
RibbonTrackingGantt.tooltip=Tracking Gantt
|
||||
RibbonTaskUsageDetail.text=Uso delle attività
|
||||
RibbonTaskUsageDetail.tooltip=Uso delle attività
|
||||
RibbonTaskUsageDetail.text=Uso delle attività
|
||||
RibbonTaskUsageDetail.tooltip=Uso delle attività
|
||||
RibbonResourceUsageDetail.text=Uso delle risorse
|
||||
RibbonResourceUsageDetail.tooltip=Uso delle risorse
|
||||
RibbonNetwork.text=Network
|
||||
RibbonNetwork.tooltip=Network
|
||||
RibbonNetwork.text=Network Reticolo Logico
|
||||
RibbonNetwork.tooltip=Network Reticolo Logico
|
||||
RibbonResources.text=Risorse
|
||||
RibbonResources.tooltip=Risorse
|
||||
RibbonProjects.text=Progetti
|
||||
|
@ -175,15 +175,15 @@ RibbonHistogram.text=Istogramma
|
|||
RibbonHistogram.tooltip=Istogramma
|
||||
RibbonCharts.text=Grafici
|
||||
RibbonCharts.tooltip=Grafici
|
||||
RibbonTaskUsage.text=Uso delle attività
|
||||
RibbonTaskUsage.tooltip=Uso delle attività
|
||||
RibbonTaskUsage.text=Uso delle attività Gestione delle attività
|
||||
RibbonTaskUsage.tooltip= Uso delle attività Gestione delle attività
|
||||
RibbonResourceUsage.text=Uso delle risorse
|
||||
RibbonResourceUsage.tooltip=Uso delle risorse
|
||||
RibbonNoSubWindow.text=Nessuna sotto-finestra
|
||||
RibbonNoSubWindow.tooltip=Nessuna sotto-finestra
|
||||
RibbonNoTextHistogram.tooltip=Istogramma
|
||||
RibbonNoTextCharts.tooltip=Grafici
|
||||
RibbonNoTextTaskUsage.tooltip=Utilizzo attività
|
||||
RibbonNoTextTaskUsage.tooltip=Utilizzo attività
|
||||
RibbonNoTextResourceUsage.tooltip=Utilizzo risorse
|
||||
RibbonNoTextNoSubWindow.tooltip=Nessuna sotto-finestra
|
||||
RibbonTopBarSaveProject.text=Salva progetto
|
||||
|
@ -212,3 +212,5 @@ ChooseSort.tooltip = Ordina
|
|||
ChooseGroup.tooltip = Gruppo
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
214
projectlibre_ui/src/com/projectlibre1/menu/menu_it2.properties
Normal file
214
projectlibre_ui/src/com/projectlibre1/menu/menu_it2.properties
Normal file
|
@ -0,0 +1,214 @@
|
|||
###############################################################################
|
||||
# The contents of this file are subject to the Common Public Attribution License
|
||||
# Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
# http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
# License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
# software over a computer network and provide for limited attribution for the
|
||||
# Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
# with Exhibit B.
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS IS" basis,
|
||||
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
# specific language governing rights and limitations under the License. The
|
||||
# Original Code is ProjectLibre. The Original Developer is the Initial Developer
|
||||
# and is ProjectLibre Inc. All portions of the code written by ProjectLibre are
|
||||
# Copyright (c) 2012-2020. All Rights Reserved. All portions of the code written by
|
||||
# ProjectLibre are Copyright (c) 2012-2020. All Rights Reserved. Contributor
|
||||
# ProjectLibre, Inc.
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the terms of the
|
||||
# ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
# the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
# If you wish to allow use of your version of this file only under the terms of the
|
||||
# ProjectLibre License and not to allow others to use your version of this file
|
||||
# under the CPAL, indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by the ProjectLibre
|
||||
# License. If you do not delete the provisions above, a recipient may use your
|
||||
# version of this file under either the CPAL or the ProjectLibre Licenses.
|
||||
#
|
||||
#
|
||||
# [NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
# in the Source Code files of the Original Code. You should use the text of this
|
||||
# Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
# Modifications.]
|
||||
#
|
||||
# EXHIBIT B. Attribution Information for ProjectLibre required
|
||||
#
|
||||
# Attribution Copyright Notice: Copyright (c) 2012-2020, ProjectLibre, Inc.
|
||||
# Attribution Phrase (not exceeding 10 words):
|
||||
# ProjectLibre, open source project management software.
|
||||
# Attribution URL: http://www.projectlibre.com
|
||||
# Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
# alternatives listed on http://www.projectlibre.com/logo
|
||||
#
|
||||
# Display of Attribution Information is required in Larger Works which are defined
|
||||
# in the CPAL as a work which combines Covered Code or portions thereof with code
|
||||
# not governed by the terms of the CPAL. However, in addition to the other notice
|
||||
# obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
# distributed must, as a form of attribution of the original author, include on
|
||||
# each user interface screen the "ProjectLibre" logo visible to all users.
|
||||
# The ProjectLibre logo should be located horizontally aligned with the menu bar
|
||||
# and left justified on the top left of the screen adjacent to the File menu. The
|
||||
# logo must be at least 144 x 31 pixels. When users click on the "ProjectLibre"
|
||||
# logo it must direct them back to http://www.projectlibre.com.
|
||||
###############################################################################
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
#
|
||||
|
||||
ProjectRibbonTask.title = File
|
||||
TaskRibbonTask.title = Attività
|
||||
ResourceRibbonTask.title = Risorsa
|
||||
ViewRibbonTask.title = Visualizza
|
||||
FileRibbonBand.title = File
|
||||
PrintRibbonBand.title = Stampa
|
||||
ClipboardRibbonBand.title = Clipboard
|
||||
#EditingRibbonBand.title = Modifica
|
||||
TaskRibbonBand.title = Attività
|
||||
ResourceRibbonBand.title = Risorsa
|
||||
ProjectRibbonBand.title = Progetto
|
||||
TaskViewsZoomRibbonBand.title = Viste
|
||||
TaskViewsRibbonBand.title = Viste attività
|
||||
ResourceViewsZoomRibbonBand.title = Viste
|
||||
ResourceViewsRibbonBand.title = Viste risorsa
|
||||
OtherViewsRibbonBand.title = Altre viste
|
||||
SubViewsRibbonBand.title = Sotto-viste
|
||||
FiltersRibbonBand.title = Filtri
|
||||
RibbonNewProject.text =Nuovo
|
||||
RibbonNewProject.tooltip =Nuovo progetto
|
||||
RibbonOpenProject.text =Apri
|
||||
RibbonOpenProject.tooltip =Apri progetto
|
||||
RibbonSaveProject.text =Salva
|
||||
RibbonSaveProject.tooltip =Salva progetto
|
||||
RibbonSaveProjectAs.text =Salva con nome
|
||||
RibbonSaveProjectAs.tooltip =Salva come nuovo progetto
|
||||
RibbonCloseProject.text =Chiudi
|
||||
RibbonCloseProject.tooltip =Chiudi progetto
|
||||
RibbonPrint.text =Stampa
|
||||
RibbonPrint.tooltip =Stampa il dcumento corrente.
|
||||
RibbonPrintPreview.text =Anteprima
|
||||
RibbonPrintPreview.tooltip =Anteprima di stampa
|
||||
RibbonPDF.text =PDF
|
||||
RibbonPDF.tooltip =PDF
|
||||
RibbonCut.text =Taglia
|
||||
RibbonCut.tooltip =Taglia
|
||||
RibbonCopy.text =Copia
|
||||
RibbonCopy.tooltip =Copia
|
||||
RibbonPaste.text =Incolla
|
||||
RibbonPaste.tooltip =Incolla
|
||||
RibbonDelete.text =Cancella
|
||||
RibbonDelete.tooltip =Cancella
|
||||
RibbonZoomIn.text =Zoom avanti
|
||||
RibbonZoomIn.tooltip =Zoom avanti
|
||||
RibbonZoomOut.text =Zoom indietro
|
||||
RibbonZoomOut.tooltip =Zoom indietro
|
||||
RibbonFind.text =Trova
|
||||
RibbonFind.tooltip = Trova
|
||||
RibbonScrollToTask.text = Scorri fino all'attività
|
||||
RibbonScrollToTask.tooltip = Scorri fino all'attività
|
||||
RibbonOutdent.text =Diminuisci rientro
|
||||
RibbonOutdent.tooltip =Diminuisci rientro
|
||||
RibbonIndent.text =Aumenta rientro
|
||||
RibbonIndent.tooltip =Aumenta rientro
|
||||
RibbonLink.text=Inserisi collegamento
|
||||
RibbonLink.tooltip=Inserisci collegamento
|
||||
RibbonUnlink.text=Elimina collegamento
|
||||
RibbonUnlink.tooltip=Elimina collegamento
|
||||
RibbonTaskInformation.text =Informazioni
|
||||
RibbonTaskInformation.tooltip =Informazioni attività
|
||||
RibbonResourceInformation.text =Informazioni
|
||||
RibbonResourceInformation.tooltip =Informazioni risorsa
|
||||
RibbonProjectInformation.text =Informazioni
|
||||
RibbonProjectInformation.tooltip =Informazioni progetto
|
||||
RibbonChangeWorkingTime.text=Calendario
|
||||
RibbonChangeWorkingTime.tooltip=Modifica il calendario di lavoro
|
||||
RibbonNotes.text =Note
|
||||
RibbonNotes.tooltip =Note...
|
||||
RibbonInsert.text =Inserisci
|
||||
RibbonInsert.tooltip =Inserisci
|
||||
RibbonAssignResources.text=Assegna risorse
|
||||
RibbonAssignResources.tooltip=Assegna risorse
|
||||
RibbonProjectsDialog.text =Finestra progetti
|
||||
RibbonProjectsDialog.tooltip =Progetti
|
||||
RibbonUpdateTasks.text =Aggiorna
|
||||
RibbonUpdateTasks.tooltip =Aggiorna attività...
|
||||
RibbonUpdateTasks.mnemonic = A
|
||||
RibbonUpdateProject.text =Aggiorna
|
||||
RibbonUpdateProject.tooltip =Aggiorna progetto...
|
||||
RibbonUpdateProject.mnemonic = P
|
||||
RibbonSaveBaseline.text =Salva Baseline
|
||||
RibbonSaveBaseline.tooltip =Salva Baseline...
|
||||
RibbonSaveBaseline.mnemonic = S
|
||||
RibbonClearBaseline.text =Elimina Baseline
|
||||
RibbonClearBaseline.tooltip =Elimina Baseline...
|
||||
RibbonClearBaseline.mnemonic = C
|
||||
RibbonGantt.text=Gantt
|
||||
RibbonGantt.tooltip=Gantt
|
||||
RibbonTrackingGantt.text=Tracking Gantt
|
||||
RibbonTrackingGantt.tooltip=Tracking Gantt
|
||||
RibbonTaskUsageDetail.text=Uso delle attività
|
||||
RibbonTaskUsageDetail.tooltip=Uso delle attività
|
||||
RibbonResourceUsageDetail.text=Uso delle risorse
|
||||
RibbonResourceUsageDetail.tooltip=Uso delle risorse
|
||||
RibbonNetwork.text=Network
|
||||
RibbonNetwork.tooltip=Network
|
||||
RibbonResources.text=Risorse
|
||||
RibbonResources.tooltip=Risorse
|
||||
RibbonProjects.text=Progetti
|
||||
RibbonProjects.tooltip=Progetti
|
||||
RibbonWBS.text=WBS
|
||||
RibbonWBS.tooltip=WBS
|
||||
RibbonRBS.text=RBS
|
||||
RibbonRBS.tooltip=RBS
|
||||
RibbonReport.text=Report
|
||||
RibbonReport.tooltip=Report
|
||||
RibbonHistogram.text=Istogramma
|
||||
RibbonHistogram.tooltip=Istogramma
|
||||
RibbonCharts.text=Grafici
|
||||
RibbonCharts.tooltip=Grafici
|
||||
RibbonTaskUsage.text=Uso delle attività
|
||||
RibbonTaskUsage.tooltip=Uso delle attività
|
||||
RibbonResourceUsage.text=Uso delle risorse
|
||||
RibbonResourceUsage.tooltip=Uso delle risorse
|
||||
RibbonNoSubWindow.text=Nessuna sotto-finestra
|
||||
RibbonNoSubWindow.tooltip=Nessuna sotto-finestra
|
||||
RibbonNoTextHistogram.tooltip=Istogramma
|
||||
RibbonNoTextCharts.tooltip=Grafici
|
||||
RibbonNoTextTaskUsage.tooltip=Utilizzo attività
|
||||
RibbonNoTextResourceUsage.tooltip=Utilizzo risorse
|
||||
RibbonNoTextNoSubWindow.tooltip=Nessuna sotto-finestra
|
||||
RibbonTopBarSaveProject.text=Salva progetto
|
||||
RibbonTopBarSaveProject.tooltip=Salva progetto
|
||||
RibbonTopBarUndo.text=Annulla
|
||||
RibbonTopBarUndo.tooltip=Annulla
|
||||
RibbonTopBarRedo.text=Ripeti
|
||||
RibbonTopBarRedo.tooltip=Ripeti
|
||||
PrintPreviewFirst.tooltip=Prima pagina
|
||||
PrintPreviewBack.tooltip=Pagina precedente
|
||||
PrintPreviewForward.tooltip = Pagina successiva
|
||||
PrintPreviewLast.tooltip = Ultima pagina
|
||||
PrintPreviewDown.tooltip = Pagina precedente
|
||||
PrintPreviewUp.tooltip = Pagina successiva
|
||||
PrintPreviewZoomOut.tooltip = Zoom indietro
|
||||
PrintPreviewZoomReset.tooltip = Ripristina Zoom
|
||||
PrintPreviewZoomIn.tooltip = Zoom avanti
|
||||
PrintPreviewFormat.tooltip = Impostazioni pagina
|
||||
PrintPreviewPrint.tooltip = Stampa
|
||||
PrintPreviewPDF.tooltip = PDF
|
||||
PrintPreviewLeftView.tooltip = Mostra la parte sinistra
|
||||
PrintPreviewRightView.tooltip = Mostra la parte destra
|
||||
Help.text = Aiuto
|
||||
ChooseFilter.tooltip = Filtro
|
||||
ChooseSort.tooltip = Ordina
|
||||
ChooseGroup.tooltip = Gruppo
|
||||
|
||||
|
231
projectlibre_ui/src/com/projectlibre1/menu/menu_th.properties
Normal file
231
projectlibre_ui/src/com/projectlibre1/menu/menu_th.properties
Normal file
|
@ -0,0 +1,231 @@
|
|||
#The contents of this file are subject to the Common Public Attribution License
|
||||
#Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
#the License. You may obtain a copy of the License at
|
||||
#http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
#License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
#software over a computer network and provide for limited attribution for the
|
||||
#Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
#with Exhibit B.
|
||||
#
|
||||
#Software distributed under the License is distributed on an "AS IS" basis,
|
||||
#WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
#specific language governing rights and limitations under the License. The
|
||||
#Original Code is ProjectLibre and ProjectLibre.
|
||||
#The Original Developer is the Initial Developer and is both ProjectLibre, Inc and
|
||||
#ProjectLibre Inc. All portions of the code written by ProjectLibre are Copyright (c)
|
||||
#2006, 2008. All Rights Reserved. All portions of the code written by ProjectLibre
|
||||
#are Copyright (c) 2012. All Rights Reserved. Contributors ProjectLibre, Inc. and
|
||||
#ProjectLibre, Inc.
|
||||
#
|
||||
#Alternatively, the contents of this file may be used under the terms of the
|
||||
#ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
#the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
#If you wish to allow use of your version of this file only under the terms of the
|
||||
#ProjectLibre License and not to allow others to use your version of this file under
|
||||
#the CPAL, indicate your decision by deleting the provisions above and replace them
|
||||
#with the notice and other provisions required by the Project Libre License. If you
|
||||
#do not delete the provisions above, a recipient may use your version of this file
|
||||
#under either the CPAL or the ProjectLibre Licenses.
|
||||
#
|
||||
#
|
||||
#[NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
#in the Source Code files of the Original Code. You should use the text of this
|
||||
#Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
#Modifications.]
|
||||
#EXHIBIT B. Attribution Information both ProjectLibre and ProjectLibre required
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2012, ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): ProjectLibre, the updated version of
|
||||
#ProjectLibre
|
||||
#Attribution URL: http://www.projectlibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
#alternatives listed on http://www.projectlibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com. The ProjectLibre logo should be located horizontally
|
||||
#aligned immediately above the ProjectLibre logo and left justified in alignment with the
|
||||
#ProjectLibre logo. The logo must be at least 144 x 31 pixels. When users click on the
|
||||
#"ProjectLibre" logo it must direct them back to http://www.projectlibre.com.
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2006, 2020 ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): Powered by ProjectLibre, an open source
|
||||
#solution from ProjectLibre
|
||||
#Attribution URL: http://www.ProjectLibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: ProjectLibre_logo.png with
|
||||
#alternatives listed on http://www.ProjectLibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. \u00A0The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com.
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
#
|
||||
|
||||
ProjectRibbonTask.title=\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
TaskRibbonTask.title=\u0E07\u0E32\u0E19
|
||||
ResourceRibbonTask.title=\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
ViewRibbonTask.title=\u0E21\u0E2D\u0E07
|
||||
FileRibbonBand.title=\u0E41\u0E1F\u0E49\u0E21
|
||||
PrintRibbonBand.title=\u0E1E\u0E34\u0E21\u0E1E\u0E4C
|
||||
ClipboardRibbonBand.title=\u0E04\u0E25\u0E34\u0E1B\u0E1A\u0E2D\u0E23\u0E4C\u0E14
|
||||
#EditingRibbonBand.title=\u0E41\u0E01\u0E49\u0E44\u0E02
|
||||
TaskRibbonBand.title=\u0E07\u0E32\u0E19
|
||||
ResourceRibbonBand.title=\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
ProjectRibbonBand.title=\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
TaskViewsZoomRibbonBand.title=\u0E22\u0E48\u0E2D\u0E02\u0E22\u0E32\u0E22\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07
|
||||
TaskViewsRibbonBand.title=\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07\u0E20\u0E32\u0E23\u0E01\u0E34\u0E08
|
||||
ResourceViewsZoomRibbonBand.title=\u0E22\u0E48\u0E2D\u0E02\u0E22\u0E32\u0E22\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07 \u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
ResourceViewsRibbonBand.title=\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07 \u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
OtherViewsRibbonBand.title=\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07\u0E2D\u0E37\u0E48\u0E19 \u0E46
|
||||
SubViewsRibbonBand.title=\u0E21\u0E38\u0E21\u0E21\u0E2D\u0E07\u0E22\u0E48\u0E2D\u0E22
|
||||
FiltersRibbonBand.title=\u0E15\u0E31\u0E27\u0E01\u0E23\u0E2D\u0E07
|
||||
RibbonNewProject.text=\u0E2A\u0E23\u0E49\u0E32\u0E07
|
||||
RibbonNewProject.tooltip=\u0E2A\u0E23\u0E49\u0E32\u0E07\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonOpenProject.text=\u0E40\u0E1B\u0E34\u0E14\u0E41\u0E1F\u0E49\u0E21
|
||||
RibbonOpenProject.tooltip=\u0E40\u0E1B\u0E34\u0E14\u0E41\u0E1F\u0E49\u0E21\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonSaveProject.text=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01
|
||||
RibbonSaveProject.tooltip=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonSaveProjectAs.text=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E40\u0E1B\u0E47\u0E19
|
||||
RibbonSaveProjectAs.tooltip=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E40\u0E1B\u0E47\u0E19\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23\u0E2D\u0E37\u0E48\u0E19
|
||||
RibbonCloseProject.text=\u0E1B\u0E34\u0E14
|
||||
RibbonCloseProject.tooltip=\u0E1B\u0E34\u0E14\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonPrint.text=\u0E1E\u0E34\u0E21\u0E1E\u0E4C
|
||||
RibbonPrint.tooltip=\u0E1E\u0E34\u0E21\u0E1E\u0E4C\u0E40\u0E2D\u0E01\u0E2A\u0E32\u0E23\u0E1B\u0E31\u0E08\u0E08\u0E38\u0E1A\u0E31\u0E19
|
||||
RibbonPrintPreview.text=\u0E14\u0E39\u0E15\u0E31\u0E27\u0E2D\u0E22\u0E48\u0E32\u0E07
|
||||
RibbonPrintPreview.tooltip=\u0E15\u0E31\u0E27\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E01\u0E48\u0E2D\u0E19\u0E1E\u0E34\u0E21\u0E1E\u0E4C
|
||||
RibbonPDF.text=PDF
|
||||
RibbonPDF.tooltip=PDF
|
||||
RibbonCut.text=\u0E04\u0E31\u0E14
|
||||
RibbonCut.tooltip=\u0E04\u0E31\u0E14
|
||||
RibbonCopy.text=\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01
|
||||
RibbonCopy.tooltip=\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01
|
||||
RibbonPaste.text=\u0E27\u0E32\u0E07
|
||||
RibbonPaste.tooltip=\u0E27\u0E32\u0E07
|
||||
RibbonDelete.text=\u0E25\u0E1A
|
||||
RibbonDelete.tooltip=\u0E25\u0E1A
|
||||
RibbonZoomIn.text=\u0E0B\u0E39\u0E21\u0E40\u0E02\u0E49\u0E32
|
||||
RibbonZoomIn.tooltip=\u0E0B\u0E39\u0E12\u0E40\u0E02\u0E49\u0E32
|
||||
RibbonZoomOut.text=\u0E0B\u0E39\u0E21\u0E2D\u0E2D\u0E01
|
||||
RibbonZoomOut.tooltip=\u0E0B\u0E39\u0E21\u0E2D\u0E2D\u0E01
|
||||
RibbonFind.text=\u0E04\u0E49\u0E19\u0E2B\u0E32
|
||||
RibbonFind.tooltip=\u0E04\u0E49\u0E19\u0E2B\u0E32
|
||||
RibbonScrollToTask.text=\u0E40\u0E25\u0E37\u0E48\u0E2D\u0E19\u0E44\u0E1B\u0E17\u0E35\u0E48\u0E07\u0E32\u0E19
|
||||
RibbonScrollToTask.tooltip=\u0E40\u0E25\u0E37\u0E48\u0E2D\u0E19\u0E44\u0E1B\u0E17\u0E35\u0E48\u0E07\u0E32\u0E19
|
||||
RibbonOutdent.text=\u0E25\u0E14\u0E01\u0E32\u0E23\u0E40\u0E22\u0E37\u0E49\u0E2D\u0E07
|
||||
RibbonOutdent.tooltip=\u0E25\u0E14\u0E01\u0E32\u0E23\u0E40\u0E22\u0E37\u0E49\u0E2D\u0E07
|
||||
RibbonIndent.text=\u0E40\u0E1E\u0E34\u0E48\u0E21\u0E01\u0E32\u0E23\u0E40\u0E22\u0E37\u0E49\u0E2D\u0E07
|
||||
RibbonIndent.tooltip=\u0E40\u0E1E\u0E34\u0E48\u0E21\u0E01\u0E32\u0E23\u0E40\u0E22\u0E37\u0E49\u0E2D\u0E07
|
||||
RibbonLink.text=\u0E25\u0E34\u0E49\u0E07\u0E04\u0E4C
|
||||
RibbonLink.tooltip=\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E07\u0E32\u0E19\u0E17\u0E35\u0E48\u0E40\u0E01\u0E35\u0E48\u0E22\u0E27\u0E02\u0E49\u0E2D\u0E07
|
||||
RibbonUnlink.text=\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01\u0E25\u0E34\u0E49\u0E07\u0E04\u0E4C
|
||||
RibbonUnlink.tooltip=\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01\u0E07\u0E32\u0E19\u0E17\u0E35\u0E48\u0E40\u0E01\u0E35\u0E48\u0E22\u0E27\u0E02\u0E49\u0E2D\u0E07
|
||||
RibbonTaskInformation.text=\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25
|
||||
RibbonTaskInformation.tooltip=\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E07\u0E32\u0E19
|
||||
RibbonResourceInformation.text=\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
RibbonResourceInformation.tooltip=\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E07\u0E32\u0E19\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
RibbonProjectInformation.text=\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonProjectInformation.tooltip=\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E07\u0E32\u0E19\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonChangeWorkingTime.text=\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E40\u0E27\u0E25\u0E32\u0E17\u0E33\u0E07\u0E32\u0E19
|
||||
RibbonChangeWorkingTime.tooltip=\u0E40\u0E1B\u0E25\u0E35\u0E48\u0E22\u0E19\u0E40\u0E27\u0E25\u0E32\u0E17\u0E33\u0E07\u0E32\u0E19
|
||||
RibbonNotes.text=\u0E2B\u0E21\u0E32\u0E22\u0E40\u0E2B\u0E15\u0E38
|
||||
RibbonNotes.tooltip=\u0E2B\u0E21\u0E32\u0E22\u0E40\u0E2B\u0E15\u0E38
|
||||
RibbonInsert.text=\u0E41\u0E17\u0E23\u0E01
|
||||
RibbonInsert.tooltip=\u0E41\u0E17\u0E23\u0E01
|
||||
RibbonAssignResources.text=\u0E01\u0E32\u0E23\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
RibbonAssignResources.tooltip=\u0E01\u0E32\u0E23\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
RibbonProjectsDialog.text=\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonProjectsDialog.tooltip=\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonUpdateTasks.text=\u0E1B\u0E23\u0E31\u0E1A\u0E1B\u0E23\u0E38\u0E07\u0E07\u0E32\u0E19
|
||||
RibbonUpdateTasks.tooltip=\u0E1B\u0E23\u0E31\u0E1A\u0E1B\u0E23\u0E38\u0E07\u0E07\u0E32\u0E19
|
||||
RibbonUpdateTasks.mnemonic=T
|
||||
RibbonUpdateProject.text=\u0E1B\u0E23\u0E31\u0E1A\u0E1B\u0E23\u0E38\u0E07\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonUpdateProject.tooltip=\u0E1B\u0E23\u0E31\u0E1A\u0E1B\u0E23\u0E38\u0E07\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonUpdateProject.mnemonic=P
|
||||
RibbonSaveBaseline.text=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E40\u0E27\u0E2D\u0E23\u0E4C\u0E0A\u0E31\u0E19\u0E1E\u0E37\u0E49\u0E19\u0E10\u0E32\u0E19
|
||||
RibbonSaveBaseline.tooltip=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E40\u0E27\u0E2D\u0E23\u0E4C\u0E0A\u0E31\u0E19\u0E1E\u0E37\u0E49\u0E19\u0E10\u0E32\u0E19
|
||||
RibbonSaveBaseline.mnemonic=S
|
||||
RibbonClearBaseline.text=\u0E25\u0E1A\u0E40\u0E27\u0E2D\u0E23\u0E4C\u0E0A\u0E31\u0E19\u0E1E\u0E37\u0E49\u0E19\u0E10\u0E32\u0E19
|
||||
RibbonClearBaseline.tooltip=\u0E25\u0E1A\u0E40\u0E27\u0E2D\u0E23\u0E4C\u0E0A\u0E31\u0E19\u0E1E\u0E37\u0E49\u0E19\u0E10\u0E32\u0E19
|
||||
RibbonClearBaseline.mnemonic=C
|
||||
RibbonGantt.text=Gantt
|
||||
RibbonGantt.tooltip=Gantt
|
||||
RibbonTrackingGantt.text=\u0E01\u0E32\u0E23\u0E15\u0E34\u0E14\u0E15\u0E32\u0E21 Gantt
|
||||
RibbonTrackingGantt.tooltip=\u0E01\u0E32\u0E23\u0E15\u0E34\u0E14\u0E15\u0E32\u0E21 Gantt
|
||||
RibbonTaskUsageDetail.text=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E07\u0E32\u0E19
|
||||
RibbonTaskUsageDetail.tooltip=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E07\u0E32\u0E19
|
||||
RibbonResourceUsageDetail.text=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23\u200B
|
||||
RibbonResourceUsageDetail.tooltip=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23\u200B
|
||||
RibbonNetwork.text=\u0E40\u0E04\u0E23\u0E37\u0E2D\u0E02\u0E48\u0E32\u0E22
|
||||
RibbonNetwork.tooltip=\u0E40\u0E04\u0E23\u0E37\u0E2D\u0E02\u0E48\u0E32\u0E22\u0E42\u0E1B\u0E23\u0E40\u0E08\u0E47\u0E01\u0E15\u0E4C
|
||||
RibbonResources.text=\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23\u200B
|
||||
RibbonResources.tooltip=\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23\u200B
|
||||
RibbonProjects.text=\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonProjects.tooltip=\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonWBS.text=WBS
|
||||
RibbonWBS.tooltip=\u0E42\u0E04\u0E23\u0E07\u0E2A\u0E23\u0E49\u0E32\u0E07\u0E01\u0E32\u0E23\u0E41\u0E1A\u0E48\u0E07\u0E07\u0E32\u0E19
|
||||
RibbonRBS.text=RBS
|
||||
RibbonRBS.tooltip=\u0E42\u0E04\u0E23\u0E07\u0E2A\u0E23\u0E49\u0E32\u0E07\u0E01\u0E32\u0E23\u0E41\u0E1A\u0E48\u0E07\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
RibbonReport.text=\u0E23\u0E32\u0E22\u0E07\u0E32\u0E19
|
||||
RibbonReport.tooltip=\u0E23\u0E32\u0E22\u0E07\u0E32\u0E19
|
||||
RibbonHistogram.text=\u0E2E\u0E34\u0E2A\u0E42\u0E15\u0E41\u0E01\u0E23\u0E21
|
||||
RibbonHistogram.tooltip=\u0E2E\u0E34\u0E2A\u0E42\u0E15\u0E41\u0E01\u0E23\u0E21
|
||||
RibbonCharts.text=\u0E01\u0E23\u0E32\u0E1F
|
||||
RibbonCharts.tooltip=\u0E01\u0E23\u0E32\u0E1F
|
||||
RibbonTaskUsage.text=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E07\u0E32\u0E19
|
||||
RibbonTaskUsage.tooltip=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E07\u0E32\u0E19
|
||||
RibbonResourceUsage.text=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23\u200B
|
||||
RibbonResourceUsage.tooltip=\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23\u200B
|
||||
RibbonNoSubWindow.text=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E23\u0E32\u0E22\u0E25\u0E30\u0E40\u0E2D\u0E35\u0E22\u0E14
|
||||
RibbonNoSubWindow.tooltip=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E23\u0E32\u0E22\u0E25\u0E30\u0E40\u0E2D\u0E35\u0E22\u0E14\u0E43\u0E19\u0E2A\u0E48\u0E27\u0E19\u0E22\u0E48\u0E2D\u0E22
|
||||
RibbonNoTextHistogram.tooltip=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E2E\u0E34\u0E2A\u0E42\u0E15\u0E41\u0E01\u0E23\u0E21
|
||||
RibbonNoTextCharts.tooltip=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E01\u0E23\u0E32\u0E1F
|
||||
RibbonNoTextTaskUsage.tooltip=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E07\u0E32\u0E19
|
||||
RibbonNoTextResourceUsage.tooltip=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E01\u0E32\u0E23\u0E43\u0E0A\u0E49\u0E17\u0E23\u0E31\u0E1E\u0E22\u0E32\u0E01\u0E23
|
||||
RibbonNoTextNoSubWindow.tooltip=\u0E44\u0E21\u0E48\u0E21\u0E35\u0E23\u0E32\u0E22\u0E25\u0E30\u0E40\u0E2D\u0E35\u0E22\u0E14\u0E43\u0E19\u0E2A\u0E48\u0E27\u0E19\u0E22\u0E48\u0E2D\u0E22
|
||||
RibbonTopBarSaveProject.text=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonTopBarSaveProject.tooltip=\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01\u0E42\u0E04\u0E23\u0E07\u0E01\u0E32\u0E23
|
||||
RibbonTopBarUndo.text=\u0E22\u0E49\u0E2D\u0E19\u0E01\u0E25\u0E31\u0E1A
|
||||
RibbonTopBarUndo.tooltip=\u0E22\u0E49\u0E2D\u0E19\u0E01\u0E25\u0E31\u0E1A
|
||||
RibbonTopBarRedo.text=\u0E17\u0E33\u0E0B\u0E49\u0E33
|
||||
RibbonTopBarRedo.tooltip=\u0E17\u0E33\u0E0B\u0E49\u0E33
|
||||
PrintPreviewFirst.tooltip=\u0E2B\u0E19\u0E49\u0E32\u0E41\u0E23\u0E01
|
||||
PrintPreviewBack.tooltip=\u0E2B\u0E19\u0E49\u0E32\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27
|
||||
PrintPreviewForward.tooltip=\u0E2B\u0E19\u0E49\u0E32\u0E15\u0E48\u0E2D\u0E44\u0E1B
|
||||
PrintPreviewLast.tooltip=\u0E2B\u0E19\u0E49\u0E32\u0E2A\u0E38\u0E14\u0E17\u0E49\u0E32\u0E22
|
||||
PrintPreviewDown.tooltip=\u0E40\u0E25\u0E37\u0E48\u0E2D\u0E19\u0E25\u0E07
|
||||
PrintPreviewUp.tooltip=\u0E40\u0E25\u0E37\u0E48\u0E2D\u0E19\u0E02\u0E36\u0E49\u0E19
|
||||
PrintPreviewZoomOut.tooltip=\u0E0B\u0E39\u0E21\u0E2D\u0E2D\u0E01
|
||||
PrintPreviewZoomReset.tooltip=\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01\u0E01\u0E32\u0E23\u0E0B\u0E39\u0E21
|
||||
PrintPreviewZoomIn.tooltip=\u0E0B\u0E39\u0E21\u0E40\u0E02\u0E49\u0E32
|
||||
PrintPreviewFormat.tooltip=\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A
|
||||
PrintPreviewPrint.tooltip=\u0E1E\u0E34\u0E21\u0E1E\u0E4C
|
||||
PrintPreviewPDF.tooltip=PDF
|
||||
PrintPreviewLeftView.tooltip=\u0E41\u0E2A\u0E14\u0E07\u0E14\u0E49\u0E32\u0E19\u0E0B\u0E49\u0E32\u0E22
|
||||
PrintPreviewRightView.tooltip=\u0E41\u0E2A\u0E14\u0E07\u0E14\u0E49\u0E32\u0E19\u0E02\u0E27\u0E32
|
||||
Help.text=\u0E0A\u0E48\u0E27\u0E22\u0E40\u0E2B\u0E25\u0E37\u0E2D
|
||||
ChooseFilter.tooltip=\u0E01\u0E23\u0E2D\u0E07
|
||||
ChooseSort.tooltip=\u0E40\u0E23\u0E35\u0E22\u0E07\u0E25\u0E33\u0E14\u0E31\u0E1A
|
||||
ChooseGroup.tooltip=\u0E01\u0E25\u0E38\u0E48\u0E21
|
301
projectlibre_ui/src/com/projectlibre1/menu/menu_vi.properties
Normal file
301
projectlibre_ui/src/com/projectlibre1/menu/menu_vi.properties
Normal file
|
@ -0,0 +1,301 @@
|
|||
# The contents of this file are subject to the Common Public Attribution License
|
||||
# N\u1ED9i dung c\u1EE7a t\u1EC7p này ph\u1EA3i tuân theo Gi\u1EA5y Phép Phân B\u1ED5 Công C\u1ED9ng Chung
|
||||
# Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
# Phiên b\u1EA3n 1.0 ("Gi\u1EA5y phép"); b\u1EA1n không th\u1EC3 s\u1EED d\u1EE5ng t\u1EC7p này tr\u1EEB khi tuân th\u1EE7
|
||||
# the License. You may obtain a copy of the License at
|
||||
# gi\u1EA5y phép. B\u1EA1n có th\u1EC3 nh\u1EADn \u0111\u01B0\u1EE3c m\u1ED9t b\u1EA3n sao c\u1EE7a Gi\u1EA5y phép t\u1EA1i
|
||||
# http://www.projity.com/license . The License is based on the Mozilla Public
|
||||
# http://www.projity.com/license. Gi\u1EA5y phép d\u1EF1a trên Mozilla Public
|
||||
# License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
# Phiên b\u1EA3n Gi\u1EA5y phép 1.1 nh\u01B0ng Ph\u1EA7n 14 và 15 \u0111ã \u0111\u01B0\u1EE3c thêm vào \u0111\u1EC3 s\u1EED d\u1EE5ng
|
||||
# software over a computer network and provide for limited attribution for the
|
||||
# ph\u1EA7n m\u1EC1m qua m\u1EA1ng máy tính và cung c\u1EA5p phân b\u1ED5 gi\u1EDBi h\u1EA1n cho
|
||||
# Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
# Nhà phát tri\u1EC3n g\u1ED1c. Ngoài ra, Ph\u1EE5 l\u1EE5c A \u0111ã \u0111\u01B0\u1EE3c s\u1EEDa \u0111\u1ED5i \u0111\u1EC3 phù h\u1EE3p
|
||||
# with Exhibit B.
|
||||
# v\u1EDBi Ph\u1EE5 l\u1EE5c B.
|
||||
# Software distributed under the License is distributed on an "AS IS" basis,
|
||||
# Ph\u1EA7n m\u1EC1m \u0111\u01B0\u1EE3c phân ph\u1ED1i theo Gi\u1EA5y phép \u0111\u01B0\u1EE3c phân ph\u1ED1i trên c\u01A1 s\u1EDF "NGUYÊN TR\u1EA0NG",
|
||||
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
# KHÔNG B\u1EA2O HÀNH B\u1EA4T K\u1EF2 HÌNH TH\u1EE8C NÀO, dù rõ ràng hay ng\u1EE5 ý. Xem Gi\u1EA5y phép cho
|
||||
# specific language governing rights and limitations under the License. The
|
||||
# ngôn ng\u1EEF c\u1EE5 th\u1EC3 \u0111i\u1EC1u ch\u1EC9nh các quy\u1EC1n và gi\u1EDBi h\u1EA1n theo Gi\u1EA5y phép. Các
|
||||
# Original Code is OpenProj and ProjectLibre.
|
||||
# Mã g\u1ED1c là OpenProj và ProjectLibre . Nhà phát tri\u1EC3n chính là Nhà phát tri\u1EC3n ban \u0111\u1EA7u và
|
||||
#The Original Developer is the Initial Developer and is both Projity, Inc and
|
||||
# Nhà phát tri\u1EC3n chính là Nhà phát tri\u1EC3n ban \u0111\u1EA7u và c\u1EA3 Projity, Inc l\u1EABn
|
||||
#ProjectLibre Inc. All portions of the code written by Projity are Copyright (c)
|
||||
#ProjectLibre Inc. T\u1EA5t c\u1EA3 các ph\u1EA7n c\u1EE7a mã do Projity vi\u1EBFt \u0111\u1EC1u là B\u1EA3n quy\u1EC1n (c)
|
||||
#2006, 2008. All Rights Reserved. All portions of the code written by ProjectLibre
|
||||
# 2006, 2008. M\u1ECDi Quy\u1EC1n \u0111\u01B0\u1EE3c B\u1EA3o l\u01B0u. T\u1EA5t c\u1EA3 các ph\u1EA7n c\u1EE7a mã \u0111\u01B0\u1EE3c vi\u1EBFt b\u1EDFi ProjectLibre
|
||||
#are Copyright (c) 2012. All Rights Reserved. Contributors Projity, Inc. and
|
||||
# là b\u1EA3n quy\u1EC1n © 2012. M\u1ECDi Quy\u1EC1n \u0111\u01B0\u1EE3c B\u1EA3o l\u01B0u. Ng\u01B0\u1EDDi \u0111óng góp Projity, Inc. và
|
||||
#ProjectLibre, Inc.
|
||||
#ProjectLibre, Inc.
|
||||
#Alternatively, the contents of this file may be used under the terms of the
|
||||
# Ngoài ra, n\u1ED9i dung c\u1EE7a t\u1EC7p này có th\u1EC3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng theo các \u0111i\u1EC1u kho\u1EA3n c\u1EE7a
|
||||
#ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
# Th\u1ECFa thu\u1EADn C\u1EA5p phép Ng\u01B0\u1EDDi dùng Cu\u1ED1i c\u1EE7a ProjectLibre (Gi\u1EA5y phép ProjectLibre), trong tr\u01B0\u1EDDng h\u1EE3p \u0111ó
|
||||
#the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
# \u0111i\u1EC1u kho\u1EA3n c\u1EE7a Gi\u1EA5y phép ProjectLibre có th\u1EC3 áp d\u1EE5ng thay cho nh\u1EEFng \u0111i\u1EC1u kho\u1EA3n \u1EDF trên.
|
||||
#If you wish to allow use of your version of this file only under the terms of the
|
||||
# N\u1EBFu b\u1EA1n mu\u1ED1n ch\u1EC9 cho phép s\u1EED d\u1EE5ng phiên b\u1EA3n c\u1EE7a t\u1EC7p này theo các \u0111i\u1EC1u kho\u1EA3n c\u1EE7a
|
||||
|
||||
#ProjectLibre License and not to allow others to use your version of this file under
|
||||
# Gi\u1EA5y phép ProjectLibre và không cho phép ng\u01B0\u1EDDi khác s\u1EED d\u1EE5ng phiên b\u1EA3n t\u1EC7p này c\u1EE7a b\u1EA1n theo
|
||||
#the CPAL, indicate your decision by deleting the provisions above and replace them
|
||||
# CPAL, cho bi\u1EBFt quy\u1EBFt \u0111\u1ECBnh c\u1EE7a b\u1EA1n b\u1EB1ng cách xóa các \u0111i\u1EC1u kho\u1EA3n \u1EDF trên và thay th\u1EBF chúng
|
||||
#with the notice and other provisions required by the Project Libre License. If you
|
||||
# v\u1EDBi thông báo và các \u0111i\u1EC1u kho\u1EA3n khác theo yêu c\u1EA7u c\u1EE7a Gi\u1EA5y phép Project Libre. N\u1EBFu b\u1EA1n
|
||||
#do not delete the provisions above, a recipient may use your version of this file
|
||||
# không xóa các \u0111i\u1EC1u kho\u1EA3n \u1EDF trên, ng\u01B0\u1EDDi nh\u1EADn có th\u1EC3 s\u1EED d\u1EE5ng phiên b\u1EA3n này c\u1EE7a b\u1EA1n
|
||||
#under either the CPAL or the ProjectLibre Licenses.
|
||||
# theo CPAL ho\u1EB7c Gi\u1EA5y phép ProjectLibre.
|
||||
#
|
||||
#[NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
# [L\u01AFU Ý: V\u0103n b\u1EA3n c\u1EE7a Ph\u1EE5 l\u1EE5c A này có th\u1EC3 h\u01A1i khác so v\u1EDBi v\u0103n b\u1EA3n c\u1EE7a các thông báo
|
||||
#in the Source Code files of the Original Code. You should use the text of this
|
||||
# trong các t\u1EC7p Mã ngu\u1ED3n c\u1EE7a Mã g\u1ED1c. B\u1EA1n nên s\u1EED d\u1EE5ng v\u0103n b\u1EA3n
|
||||
#Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
#Ph\u1EE5 L\u1EE5c A ch\u1EE9 không ph\u1EA3i là v\u0103n b\u1EA3n \u0111\u01B0\u1EE3c tìm th\u1EA5y trong Mã ngu\u1ED3n g\u1ED1c cho
|
||||
#Modifications.]
|
||||
# S\u1EEDa \u0111\u1ED5i.]
|
||||
#EXHIBIT B. Attribution Information both ProjectLibre and OpenProj required
|
||||
#Ph\u1EE5 l\u1EE5c B. C\u1EA7n có Thông tin Thu\u1ED9c tính cho c\u1EA3 ProjectLibre và OpenProj
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2012, ProjectLibre, Inc.
|
||||
# Thông báo v\u1EC1 B\u1EA3n quy\u1EC1n Ghi nh\u1EADn tác gi\u1EA3: B\u1EA3n quy\u1EC1n (c) 2012, ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): ProjectLibre, the updated version of
|
||||
# C\u1EE5m t\u1EEB Thu\u1ED9c tính (không quá 10 t\u1EEB): ProjectLibre, phiên b\u1EA3n c\u1EADp nh\u1EADt c\u1EE7a
|
||||
#OpenProj
|
||||
# OpenProj
|
||||
#Attribution URL: http://www.projectlibre.com
|
||||
# URL phân b\u1ED5: http://www.projectlibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
# Hình \u1EA3nh \u0110\u1ED3 h\u1ECDa nh\u01B0 \u0111\u01B0\u1EE3c cung c\u1EA5p trong Mã \u0111\u01B0\u1EE3c B\u1EA3o v\u1EC7 d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p: projectlibre-logo.png v\u1EDBi
|
||||
#alternatives listed on http://www.projectlibre.com/logo
|
||||
# l\u1EF1a ch\u1ECDn thay th\u1EBF \u0111\u01B0\u1EE3c li\u1EC7t kê trên http://www.projectlibre.com/logo
|
||||
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
# C\u1EA7n có Hi\u1EC3n th\u1ECB Thông tin Phân b\u1ED5 trong s\u1EA3n ph\u1EA9m l\u1EDBn h\u01A1n \u0111\u01B0\u1EE3c \u0111\u1ECBnh ngh\u0129a trong
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
# CPAL nh\u01B0 m\u1ED9t s\u1EA3n ph\u1EA9m k\u1EBFt h\u1EE3p Mã \u0111\u01B0\u1EE3c b\u1EA3o v\u1EC7 ho\u1EB7c các ph\u1EA7n c\u1EE7a nó v\u1EDBi mã không
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
# \u0111\u01B0\u1EE3c \u0111i\u1EC1u ch\u1EC9nh b\u1EDFi các \u0111i\u1EC1u kho\u1EA3n c\u1EE7a CPAL. Tuy nhiên, ngoài các thông báo
|
||||
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
# ngh\u0129a v\u1EE5 khác, t\u1EA5t c\u1EA3 các b\u1EA3n sao c\u1EE7a Mã \u0111\u01B0\u1EE3c b\u1EA3o v\u1EC7 \u1EDF d\u1EA1ng Mã ngu\u1ED3n và Có th\u1EC3 th\u1EF1c thi
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
# ph\u1EA3i \u0111\u01B0\u1EE3c phân ph\u1ED1i, nh\u01B0 m\u1ED9t hình th\u1EE9c ghi nh\u1EADn tác gi\u1EA3 g\u1ED1c, bao g\u1ED3m trên m\u1ED7i
|
||||
#user interface screen the "OpenProj" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
# giao di\u1EC7n ng\u01B0\u1EDDi dùng hi\u1EC3n th\u1ECB logo "OpenProj" và \u201CProjectLibre \ u201D cho t\u1EA5t c\u1EA3 ng\u01B0\u1EDDi dùng.
|
||||
#The OpenProj logo should be located horizontally aligned with the menu bar and left
|
||||
# Bi\u1EC3u tr\u01B0ng OpenProj ph\u1EA3i \u0111\u01B0\u1EE3c c\u0103n ch\u1EC9nh theo chi\u1EC1u ngang v\u1EDBi thanh menu và
|
||||
#justified on the top left of the screen adjacent to the File menu. The logo must be
|
||||
# c\u0103n trái \u1EDF trên cùng bên trái c\u1EE7a màn hình li\u1EC1n k\u1EC1 v\u1EDBi menu T\u1EC7p. Bi\u1EC3u t\u01B0\u1EE3ng ph\u1EA3i là
|
||||
#at least 100 x 25 pixels. When users click on the "OpenProj" logo it must direct them
|
||||
# ít nh\u1EA5t 100 x 25 pixel. Khi ng\u01B0\u1EDDi dùng nh\u1EA5p vào logo "OpenProj", nó ph\u1EA3i h\u01B0\u1EDBng h\u1ECD
|
||||
#back to http://www.projity.com. The ProjectLibre logo should be located horizontally
|
||||
# quay l\u1EA1i http://www.projity.com. Logo ProjectLibre ph\u1EA3i \u0111\u01B0\u1EE3c \u0111\u1EB7t theo chi\u1EC1u ngang
|
||||
#aligned immediately above the OpenProj logo and left justified in alignment with the
|
||||
# c\u0103n ngay phía trên bi\u1EC3u tr\u01B0ng OpenProj và c\u0103n ch\u1EC9nh trái v\u1EDBi
|
||||
#OpenProj logo. The logo must be at least 144 x 31 pixels. When users click on the
|
||||
# Bi\u1EC3u tr\u01B0ng OpenProj. Bi\u1EC3u tr\u01B0ng ph\u1EA3i có kích th\u01B0\u1EDBc ít nh\u1EA5t là 144 x 31 pixel. Khi ng\u01B0\u1EDDi dùng nh\u1EA5p vào
|
||||
#"ProjectLibre" logo it must direct them back to http://www.projectlibre.com.
|
||||
# "ProjectLibre" logo nó ph\u1EA3i h\u01B0\u1EDBng h\u1ECD tr\u1EDF l\u1EA1i http://www.projectlibre.com.
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2006, 2008 Projity, Inc.
|
||||
# Thông báo v\u1EC1 B\u1EA3n quy\u1EC1n Ghi nh\u1EADn tác gi\u1EA3: B\u1EA3n quy\u1EC1n (c) 2006, 2008 Projity, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): Powered by OpenProj, an open source
|
||||
# C\u1EE5m t\u1EEB thu\u1ED9c tính (không quá 10 t\u1EEB): \u0110\u01B0\u1EE3c cung c\u1EA5p b\u1EDFi OpenProj, m\u1ED9t ngu\u1ED3n m\u1EDF
|
||||
#solution from Projity
|
||||
# gi\u1EA3i pháp t\u1EEB Projity
|
||||
#Attribution URL: http://www.projity.com
|
||||
# URL phân b\u1ED5: http://www.projity.com
|
||||
#Graphic Image as provided in the Covered Code as file: openproj_logo.png with
|
||||
# Hình \u1EA3nh \u0110\u1ED3 h\u1ECDa nh\u01B0 \u0111\u01B0\u1EE3c cung c\u1EA5p trong Mã \u0111\u01B0\u1EE3c B\u1EA3o v\u1EC7 d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p: openproj_logo.png v\u1EDBi
|
||||
#alternatives listed on http://www.projity.com/logo
|
||||
# l\u1EF1a ch\u1ECDn thay th\u1EBF \u0111\u01B0\u1EE3c li\u1EC7t kê trên http://www.projity.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
# C\u1EA7n có Hi\u1EC3n th\u1ECB Thông tin Phân b\u1ED5 trong S\u1EA3n Ph\u1EA9m L\u1EDBn h\u01A1n \u0111\u01B0\u1EE3c \u0111\u1ECBnh ngh\u0129a trong
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
# CPAL nh\u01B0 m\u1ED9t s\u1EA3n ph\u1EA9m k\u1EBFt h\u1EE3p Mã \u0111\u01B0\u1EE3c b\u1EA3o v\u1EC7 ho\u1EB7c các ph\u1EA7n c\u1EE7a nó v\u1EDBi mã không
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
# \u0111\u01B0\u1EE3c \u0111i\u1EC1u ch\u1EC9nh b\u1EDFi các \u0111i\u1EC1u kho\u1EA3n c\u1EE7a CPAL. Tuy nhiên, ngoài các thông báo
|
||||
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
# ngh\u0129a v\u1EE5 khác, t\u1EA5t c\u1EA3 các b\u1EA3n sao c\u1EE7a Mã \u0111\u01B0\u1EE3c b\u1EA3o v\u1EC7 \u1EDF d\u1EA1ng Mã ngu\u1ED3n và Có th\u1EC3 th\u1EF1c thi
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
# ph\u1EA3i \u0111\u01B0\u1EE3c phân ph\u1ED1i, nh\u01B0 m\u1ED9t hình th\u1EE9c ghi nh\u1EADn tác gi\u1EA3 g\u1ED1c, bao g\u1ED3m trên m\u1ED7i
|
||||
#user interface screen the "OpenProj" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
# giao di\u1EC7n ng\u01B0\u1EDDi dùng hi\u1EC3n th\u1ECB logo "OpenProj" và \ u201CProjectLibre \ u201D cho t\u1EA5t c\u1EA3 ng\u01B0\u1EDDi dùng.
|
||||
#The OpenProj logo should be located horizontally aligned with the menu bar and left
|
||||
# Bi\u1EC3u tr\u01B0ng OpenProj ph\u1EA3i \u0111\u01B0\u1EE3c c\u0103n ch\u1EC9nh theo chi\u1EC1u ngang v\u1EDBi thanh menu và
|
||||
#justified on the top left of the screen adjacent to the File menu. \u00A0The logo must be
|
||||
# c\u0103n trái \u1EDF trên cùng bên trái c\u1EE7a màn hình li\u1EC1n k\u1EC1 v\u1EDBi menu T\u1EC7p. \ u00A0 Logo ph\u1EA3i là
|
||||
#at least 100 x 25 pixels. When users click on the "OpenProj" logo it must direct them
|
||||
# ít nh\u1EA5t 100 x 25 pixel. Khi ng\u01B0\u1EDDi dùng nh\u1EA5p vào logo "OpenProj", nó ph\u1EA3i h\u01B0\u1EDBng h\u1ECD
|
||||
#back to http://www.projity.com.
|
||||
# quay l\u1EA1i http://www.projity.com.
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
# L\u01AFU Ý V\u1ECA TRÍ:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# Các dòng duy nh\u1EA5t \u0111\u1EC3 b\u1EA3n \u0111\u1ECBa hóa có các h\u1EADu t\u1ED1 sau:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .mnemonic (th\u01B0\u1EDDng là ch\u1EEF cái \u0111\u1EA7u tiên c\u1EE7a .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
# .accelerator (th\u01B0\u1EDDng là CTRL + ch\u1EEF cái \u0111\u1EA7u tiên c\u1EE7a .text)
|
||||
#
|
||||
|
||||
ProjectRibbonTask.title=d\u1EF1 án
|
||||
TaskRibbonTask.title=công tác
|
||||
ResourceRibbonTask.title=tài nguyên
|
||||
ViewRibbonTask.title=xem
|
||||
FileRibbonBand.title=t\u1EADp tin
|
||||
PrintRibbonBand.title=in
|
||||
ClipboardRibbonBand.title=b\u1EA3ng ghi t\u1EA1m
|
||||
#EditingRibbonBand.title=biên so\u1EA1n
|
||||
TaskRibbonBand.title=công tác
|
||||
ResourceRibbonBand.title=tài nguyên
|
||||
ProjectRibbonBand.title=d\u1EF1 án
|
||||
TaskViewsZoomRibbonBand.title=xem công tác
|
||||
TaskViewsRibbonBand.title=xem công tác
|
||||
ResourceViewsZoomRibbonBand.title=xem tài nguyên
|
||||
ResourceViewsRibbonBand.title=xem tài nguyên
|
||||
OtherViewsRibbonBand.title=xem khác
|
||||
SubViewsRibbonBand.title=xem ph\u1EE5
|
||||
FiltersRibbonBand.title=l\u1ECDc
|
||||
RibbonNewProject.text=m\u1EDBi
|
||||
RibbonNewProject.tooltip=m\u1EDBi
|
||||
RibbonOpenProject.text=m\u1EDF
|
||||
RibbonOpenProject.tooltip=m\u1EDF
|
||||
RibbonSaveProject.text=l\u01B0u
|
||||
RibbonSaveProject.tooltip=l\u01B0u
|
||||
RibbonSaveProjectAs.text=l\u01B0u l\u1EA1i
|
||||
RibbonSaveProjectAs.tooltip=l\u01B0u l\u1EA1i
|
||||
RibbonCloseProject.text=\u0111óng
|
||||
RibbonCloseProject.tooltip=\u0111óng
|
||||
RibbonPrint.text=in
|
||||
RibbonPrint.tooltip=in
|
||||
RibbonPrintPreview.text=xem tr\u01B0\u1EDBc in
|
||||
RibbonPrintPreview.tooltip=xem tr\u01B0\u1EDBc in
|
||||
RibbonPDF.text=PDF.v\u0103n b\u1EA3n
|
||||
RibbonPDF.tooltip=m\u1EB9o công c\u1EE5
|
||||
RibbonCut.text=c\u1EAFt
|
||||
RibbonCut.tooltip=c\u1EAFt
|
||||
RibbonCopy.text=sao chép
|
||||
RibbonCopy.tooltip=sao chép
|
||||
RibbonPaste.text=dán
|
||||
RibbonPaste.tooltip=dán
|
||||
RibbonDelete.text=xóa
|
||||
RibbonDelete.tooltip=xóa
|
||||
RibbonZoomIn.text=phóng to
|
||||
RibbonZoomIn.tooltip=phóng to
|
||||
RibbonZoomOut.text=thu nh\u1ECF
|
||||
RibbonZoomOut.tooltip=thu nh\u1ECF
|
||||
RibbonFind.text=tìm
|
||||
RibbonFind.tooltip=tìm
|
||||
RibbonScrollToTask.text=cu\u1ED9n t\u1EDBi công tác
|
||||
RibbonScrollToTask.tooltip=cu\u1ED9n t\u1EDBi công tác
|
||||
RibbonOutdent.text=nhô ra
|
||||
RibbonOutdent.tooltip=nhô ra
|
||||
RibbonIndent.text=th\u1EE5t vào
|
||||
RibbonIndent.tooltip=th\u1EE5t vào
|
||||
RibbonLink.text=k\u1EBFt n\u1ED1i
|
||||
RibbonLink.tooltip=k\u1EBFt n\u1ED1i
|
||||
RibbonUnlink.text=không k\u1EBFt n\u1ED1i
|
||||
RibbonUnlink.tooltip=không k\u1EBFt n\u1ED1i
|
||||
RibbonTaskInformation.text=thông tin công tác
|
||||
RibbonTaskInformation.tooltip=thông tin công tác
|
||||
RibbonResourceInformation.text=thông tin tài nguyên
|
||||
RibbonResourceInformation.tooltip=thông tin tài nguyên
|
||||
RibbonProjectInformation.text=thông tin d\u1EF1 án
|
||||
RibbonProjectInformation.tooltip=thông tin d\u1EF1 án
|
||||
RibbonChangeWorkingTime.text=thay \u0111\u1ED5i gi\u1EDD làm vi\u1EC7c
|
||||
RibbonChangeWorkingTime.tooltip=thay \u0111\u1ED5i gi\u1EDD làm vi\u1EC7c
|
||||
RibbonNotes.text=ghi chú
|
||||
RibbonNotes.tooltip=ghi chú
|
||||
RibbonInsert.text=chèn
|
||||
RibbonInsert.tooltip=chèn
|
||||
RibbonAssignResources.text=phân công tài nguyên
|
||||
RibbonAssignResources.tooltip=phân công tài nguyên
|
||||
RibbonProjectsDialog.text=h\u1ED9p tho\u1EA1i d\u1EF1 án
|
||||
RibbonProjectsDialog.tooltip=h\u1ED9p tho\u1EA1i d\u1EF1 án
|
||||
RibbonUpdateTasks.text=c\u1EADp nh\u1EADt công tác
|
||||
RibbonUpdateTasks.tooltip=c\u1EADp nh\u1EADt công tác
|
||||
RibbonUpdateTasks.mnemonic=c\u1EADp nh\u1EADt công tác
|
||||
RibbonUpdateProject.text=c\u1EADp nh\u1EADt d\u1EF1 án
|
||||
RibbonUpdateProject.tooltip=c\u1EADp nh\u1EADt d\u1EF1 án
|
||||
RibbonUpdateProject.mnemonic=c\u1EADp nh\u1EADt d\u1EF1 án
|
||||
RibbonSaveBaseline.text=l\u01B0u \u0111\u01B0\u1EDDng c\u01A1 s\u1EDF
|
||||
RibbonSaveBaseline.tooltip=l\u01B0u \u0111\u01B0\u1EDDng c\u01A1 s\u1EDF
|
||||
RibbonSaveBaseline.mnemonic=l\u01B0u \u0111\u01B0\u1EDDng c\u01A1 s\u1EDF
|
||||
RibbonClearBaseline.text=xóa \u0111\u01B0\u1EDDng c\u01A1 s\u1EDF
|
||||
RibbonClearBaseline.tooltip=xóa \u0111\u01B0\u1EDDng c\u01A1 s\u1EDF
|
||||
RibbonClearBaseline.mnemonic=xóa \u0111\u01B0\u1EDDng c\u01A1 s\u1EDF
|
||||
RibbonGantt.text=Gantt
|
||||
RibbonGantt.tooltip=Gantt
|
||||
RibbonTrackingGantt.text=truy tìm Gantt
|
||||
RibbonTrackingGantt.tooltip=truy tìm Gantt
|
||||
RibbonTaskUsageDetail.text=chi ti\u1EBFt s\u1EED d\u1EE5ng công tác
|
||||
RibbonTaskUsageDetail.tooltip=chi ti\u1EBFt s\u1EED d\u1EE5ng công tác
|
||||
RibbonResourceUsageDetail.text=chi ti\u1EBFt s\u1EED d\u1EE5ng tài nguyên
|
||||
RibbonResourceUsageDetail.tooltip=chi ti\u1EBFt s\u1EED d\u1EE5ng tài nguyên
|
||||
RibbonNetwork.text=công vi\u1EC7c ròng
|
||||
RibbonNetwork.tooltip=công vi\u1EC7c ròng
|
||||
RibbonResources.text=tài nguyên
|
||||
RibbonResources.tooltip=tài nguyên
|
||||
RibbonProjects.text=d\u1EF1 án
|
||||
RibbonProjects.tooltip=d\u1EF1 án
|
||||
RibbonWBS.text=\u0130KY \u2026\u2026\u2026\u2026\u2026\u2026. \u0130\u015F K\u0131r\u0131l\u0131m\u0131 Yap\u0131s\u0131
|
||||
RibbonWBS.tooltip=\u0130KY \u2026\u2026\u2026\u2026\u2026\u2026. \u0130\u015F K\u0131r\u0131l\u0131m\u0131 Yap\u0131s\u0131
|
||||
RibbonRBS.text=KKY \u2026\u2026\u2026\u2026\u2026 Kaynak K\u0131r\u0131l\u0131m\u0131 Yap\u0131s\u0131
|
||||
RibbonRBS.tooltip=KKY \u2026\u2026\u2026\u2026\u2026 Kaynak K\u0131r\u0131l\u0131m\u0131 Yap\u0131s\u0131
|
||||
RibbonReport.text=báo cáo
|
||||
RibbonReport.tooltip=báo cáo
|
||||
RibbonHistogram.text=Histogram
|
||||
RibbonHistogram.tooltip=Histogram
|
||||
RibbonCharts.text=bi\u1EC3u \u0111\u1ED3
|
||||
RibbonCharts.tooltip=bi\u1EC3u \u0111\u1ED3
|
||||
RibbonTaskUsage.text=s\u1EED d\u1EE5ng công tác
|
||||
RibbonTaskUsage.tooltip=s\u1EED d\u1EE5ng công tác
|
||||
RibbonResourceUsage.text=s\u1EED d\u1EE5ng tài nguyên
|
||||
RibbonResourceUsage.tooltip=s\u1EED d\u1EE5ng tài nguyên
|
||||
RibbonNoSubWindow.text=không có c\u1EEDa s\u1ED5 ph\u1EE5
|
||||
RibbonNoSubWindow.tooltip=không có c\u1EEDa s\u1ED5 ph\u1EE5
|
||||
RibbonNoTextHistogram.tooltip=không có v\u0103n b\u1EA3n Histogram
|
||||
RibbonNoTextCharts.tooltip=không có v\u0103n b\u1EA3n \u0111\u1ED3 th\u1ECB
|
||||
RibbonNoTextTaskUsage.tooltip=không có v\u0103n b\u1EA3n s\u1EED d\u1EE5ng công tác
|
||||
RibbonNoTextResourceUsage.tooltip=không có v\u0103n b\u1EA3n s\u1EED d\u1EE5ng tài nguyên
|
||||
RibbonNoTextNoSubWindow.tooltip=không có v\u0103n b\u1EA3n không có c\u1EEDa s\u1ED5 ph\u1EE5
|
||||
RibbonTopBarSaveProject.text=l\u01B0u d\u1EF1 án
|
||||
RibbonTopBarSaveProject.tooltip=l\u01B0u d\u1EF1 án
|
||||
RibbonTopBarUndo.text=h\u1EE7y
|
||||
RibbonTopBarUndo.tooltip=h\u1EE7y
|
||||
RibbonTopBarRedo.text=làm l\u1EA1i
|
||||
RibbonTopBarRedo.tooltip=làm l\u1EA1i
|
||||
PrintPreviewFirst.tooltip=\u0111\u1EA7u tiên
|
||||
PrintPreviewBack.tooltip=sau
|
||||
PrintPreviewForward.tooltip=tr\u01B0\u1EDBc
|
||||
PrintPreviewLast.tooltip=cu\u1ED1i cùng
|
||||
PrintPreviewDown.tooltip=xu\u1ED1ng
|
||||
PrintPreviewUp.tooltip=lên
|
||||
PrintPreviewZoomOut.tooltip=thu nh\u1ECF
|
||||
PrintPreviewZoomReset.tooltip=l\u1EADp l\u1EA1i ch\u1EBF \u0111\u1ED9 thu phóng
|
||||
PrintPreviewZoomIn.tooltip=phóng to
|
||||
PrintPreviewFormat.tooltip=\u0111\u1ECBnh d\u1EA1ng
|
||||
PrintPreviewPrint.tooltip=in
|
||||
PrintPreviewPDF.tooltip=PDF
|
||||
PrintPreviewLeftView.tooltip=xem trái
|
||||
PrintPreviewRightView.tooltip=xem ph\u1EA3i
|
||||
Help.text=h\u1ED7 tr\u1EE3
|
||||
ChooseFilter.tooltip=l\u1ECDc
|
||||
ChooseSort.tooltip=s\u1EAFp x\u1EBFp
|
||||
ChooseGroup.tooltip=nhóm
|
232
projectlibre_ui/src/com/projectlibre1/menu/menu_zh.properties
Normal file
232
projectlibre_ui/src/com/projectlibre1/menu/menu_zh.properties
Normal file
|
@ -0,0 +1,232 @@
|
|||
#The contents of this file are subject to the Common Public Attribution License
|
||||
#Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
#the License. You may obtain a copy of the License at
|
||||
#http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
#License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
#software over a computer network and provide for limited attribution for the
|
||||
#Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
#with Exhibit B.
|
||||
#
|
||||
#Software distributed under the License is distributed on an "AS IS" basis,
|
||||
#WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
#specific language governing rights and limitations under the License. The
|
||||
#Original Code is ProjectLibre and ProjectLibre.
|
||||
#The Original Developer is the Initial Developer and is both ProjectLibre, Inc and
|
||||
#ProjectLibre Inc. All portions of the code written by ProjectLibre are Copyright (c)
|
||||
#2006, 2008. All Rights Reserved. All portions of the code written by ProjectLibre
|
||||
#are Copyright (c) 2012. All Rights Reserved. Contributors ProjectLibre, Inc. and
|
||||
#ProjectLibre, Inc.
|
||||
#
|
||||
#Alternatively, the contents of this file may be used under the terms of the
|
||||
#ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
#the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
#If you wish to allow use of your version of this file only under the terms of the
|
||||
#ProjectLibre License and not to allow others to use your version of this file under
|
||||
#the CPAL, indicate your decision by deleting the provisions above and replace them
|
||||
#with the notice and other provisions required by the Project Libre License. If you
|
||||
#do not delete the provisions above, a recipient may use your version of this file
|
||||
#under either the CPAL or the ProjectLibre Licenses.
|
||||
#
|
||||
#
|
||||
#[NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
#in the Source Code files of the Original Code. You should use the text of this
|
||||
#Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
#Modifications.]
|
||||
#EXHIBIT B. Attribution Information both ProjectLibre and ProjectLibre required
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2012, ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): ProjectLibre, the updated version of
|
||||
#ProjectLibre
|
||||
#Attribution URL: http://www.projectlibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
#alternatives listed on http://www.projectlibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com. The ProjectLibre logo should be located horizontally
|
||||
#aligned immediately above the ProjectLibre logo and left justified in alignment with the
|
||||
#ProjectLibre logo. The logo must be at least 144 x 31 pixels. When users click on the
|
||||
#"ProjectLibre" logo it must direct them back to http://www.projectlibre.com.
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2006, 2020 ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): Powered by ProjectLibre, an open source
|
||||
#solution from ProjectLibre
|
||||
#Attribution URL: http://www.ProjectLibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: ProjectLibre_logo.png with
|
||||
#alternatives listed on http://www.ProjectLibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. \u00A0The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com.
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
#
|
||||
|
||||
|
||||
ProjectRibbonTask.title = \u6A94\u6848
|
||||
TaskRibbonTask.title = \u4EFB\u52D9
|
||||
ResourceRibbonTask.title = \u8CC7\u6E90
|
||||
ViewRibbonTask.title = \u6AA2\u8996
|
||||
FileRibbonBand.title = \u6A94\u6848
|
||||
PrintRibbonBand.title = \u5217\u5370
|
||||
ClipboardRibbonBand.title = \u526A\u8CBC\u7C3F
|
||||
#EditingRibbonBand.title = \u7DE8\u8F2F
|
||||
TaskRibbonBand.title = \u4EFB\u52D9
|
||||
ResourceRibbonBand.title = \u8CC7\u6E90
|
||||
ProjectRibbonBand.title = \u5C08\u6848
|
||||
TaskViewsZoomRibbonBand.title = \u6AA2\u8996
|
||||
TaskViewsRibbonBand.title = \u4EFB\u52D9\u6AA2\u8996
|
||||
ResourceViewsZoomRibbonBand.title = \u6AA2\u8996
|
||||
ResourceViewsRibbonBand.title = \u8CC7\u6E90\u6AA2\u8996
|
||||
OtherViewsRibbonBand.title = \u5176\u4ED6\u6AA2\u8996
|
||||
SubViewsRibbonBand.title = \u6B21\u8981\u6AA2\u8996
|
||||
FiltersRibbonBand.title = \u904E\u6FFE
|
||||
RibbonNewProject.text =\u65B0\u589E
|
||||
RibbonNewProject.tooltip =\u65B0\u589E\u5C08\u6848
|
||||
RibbonOpenProject.text =\u958B\u555F
|
||||
RibbonOpenProject.tooltip =\u958B\u555F\u5C08\u6848
|
||||
RibbonSaveProject.text =\u5132\u5B58
|
||||
RibbonSaveProject.tooltip =\u5132\u5B58\u5C08\u6848
|
||||
RibbonSaveProjectAs.text =\u53E6\u5B58
|
||||
RibbonSaveProjectAs.tooltip =\u5132\u5B58\u70BA\u65B0\u5C08\u6848
|
||||
RibbonCloseProject.text =\u95DC\u9589
|
||||
RibbonCloseProject.tooltip =\u95DC\u9589\u5C08\u6848
|
||||
RibbonPrint.text =\u5217\u5370
|
||||
RibbonPrint.tooltip =\u5217\u5370\u7576\u524D\u6587\u4EF6.
|
||||
RibbonPrintPreview.text =\u9810\u89BD
|
||||
RibbonPrintPreview.tooltip =\u9810\u89BD\u5217\u5370
|
||||
RibbonPDF.text =PDF
|
||||
RibbonPDF.tooltip =PDF
|
||||
RibbonCut.text =\u526A\u4E0B
|
||||
RibbonCut.tooltip =\u526A\u4E0B
|
||||
RibbonCopy.text =\u8907\u88FD
|
||||
RibbonCopy.tooltip =\u8907\u88FD
|
||||
RibbonPaste.text =Paste
|
||||
RibbonPaste.tooltip =Paste
|
||||
RibbonDelete.text =\u522A\u9664
|
||||
RibbonDelete.tooltip =\u522A\u9664
|
||||
RibbonZoomIn.text =\u62C9\u8FD1
|
||||
RibbonZoomIn.tooltip =\u62C9\u8FD1
|
||||
RibbonZoomOut.text =\u62C9\u9060
|
||||
RibbonZoomOut.tooltip =\u62C9\u9060
|
||||
RibbonFind.text =\u5C0B\u627E
|
||||
RibbonFind.tooltip = \u5C0B\u627E
|
||||
RibbonScrollToTask.text = \u6372\u52D5\u81F3\u4EFB\u52D9
|
||||
RibbonScrollToTask.tooltip = \u6372\u52D5\u81F3\u4EFB\u52D9
|
||||
RibbonOutdent.text =\u6E1B\u5C11\u7E2E\u6392
|
||||
RibbonOutdent.tooltip =\u6E1B\u5C11\u7E2E\u6392
|
||||
RibbonIndent.text =\u589E\u52A0\u7E2E\u6392
|
||||
RibbonIndent.tooltip =\u589E\u52A0\u7E2E\u6392
|
||||
RibbonLink.text=\u9023\u7D50
|
||||
RibbonLink.tooltip=\u9023\u7D50
|
||||
RibbonUnlink.text=\u53CD\u9023\u7D50
|
||||
RibbonUnlink.tooltip=\u53CD\u9023\u7D50
|
||||
RibbonTaskInformation.text =\u8CC7\u8A0A
|
||||
RibbonTaskInformation.tooltip =\u4EFB\u52D9\u8CC7\u8A0A
|
||||
RibbonResourceInformation.text =\u8CC7\u8A0A
|
||||
RibbonResourceInformation.tooltip =\u8CC7\u6E90\u8CC7\u8A0A
|
||||
RibbonProjectInformation.text =\u8CC7\u8A0A
|
||||
RibbonProjectInformation.tooltip =\u5C08\u6848\u8CC7\u8A0A
|
||||
RibbonChangeWorkingTime.text=\u884C\u4E8B\u66C6
|
||||
RibbonChangeWorkingTime.tooltip=\u4FBF\u5DE5\u4F5C\u884C\u4E8B\u66C6
|
||||
RibbonNotes.text =\u7B46\u8A18
|
||||
RibbonNotes.tooltip =\u7B46\u8A18...
|
||||
RibbonInsert.text =\u63D2\u5165
|
||||
RibbonInsert.tooltip =\u63D2\u5165
|
||||
RibbonAssignResources.text=\u5206\u914D\u8CC7\u6E90
|
||||
RibbonAssignResources.tooltip=\u5206\u914D\u8CC7\u6E90
|
||||
RibbonProjectsDialog.text =\u5C08\u6848\u8996\u7A97
|
||||
RibbonProjectsDialog.tooltip =\u5C08\u6848
|
||||
RibbonUpdateTasks.text =\u66F4\u65B0
|
||||
RibbonUpdateTasks.tooltip =\u66F4\u65B0\u5C08\u6848...
|
||||
RibbonUpdateTasks.mnemonic = T
|
||||
RibbonUpdateProject.text =\u66F4\u65B0
|
||||
RibbonUpdateProject.tooltip =\u66F4\u65B0\u5C08\u6848...
|
||||
RibbonUpdateProject.mnemonic = P
|
||||
RibbonSaveBaseline.text =\u5132\u5B58\u57FA\u7DDA
|
||||
RibbonSaveBaseline.tooltip =\u5132\u5B58\u57FA\u7DDA...
|
||||
RibbonSaveBaseline.mnemonic = S
|
||||
RibbonClearBaseline.text =\u6E05\u9664\u57FA\u7DDA
|
||||
RibbonClearBaseline.tooltip =\u6E05\u9664\u57FA\u7DDA...
|
||||
RibbonClearBaseline.mnemonic = C
|
||||
RibbonGantt.text=\u7518\u7279
|
||||
RibbonGantt.tooltip=\u7518\u7279
|
||||
RibbonTrackingGantt.text=\u8FFD\u8E2A\u7518\u7279
|
||||
RibbonTrackingGantt.tooltip=\u8FFD\u8E2A\u7518\u7279
|
||||
RibbonTaskUsageDetail.text=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonTaskUsageDetail.tooltip=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonResourceUsageDetail.text=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonResourceUsageDetail.tooltip=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonNetwork.text=\u7DB2\u8DEF
|
||||
RibbonNetwork.tooltip=\u7DB2\u8DEF
|
||||
RibbonResources.text=\u8CC7\u6E90
|
||||
RibbonResources.tooltip=\u8CC7\u6E90
|
||||
RibbonProjects.text=\u5C08\u6848
|
||||
RibbonProjects.tooltip=\u5C08\u6848
|
||||
RibbonWBS.text=WBS
|
||||
RibbonWBS.tooltip=WBS
|
||||
RibbonRBS.text=RBS
|
||||
RibbonRBS.tooltip=RBS
|
||||
RibbonReport.text=\u56DE\u5831
|
||||
RibbonReport.tooltip=\u56DE\u5831
|
||||
RibbonHistogram.text=\u7D71\u8A08
|
||||
RibbonHistogram.tooltip=\u7D71\u8A08
|
||||
RibbonCharts.text=\u5716\u8868
|
||||
RibbonCharts.tooltip=\u5716\u8868
|
||||
RibbonTaskUsage.text=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonTaskUsage.tooltip=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonResourceUsage.text=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonResourceUsage.tooltip=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonNoSubWindow.text=\u6C92\u6709\u5B50\u8996\u7A97
|
||||
RibbonNoSubWindow.tooltip=\u6C92\u6709\u5B50\u8996\u7A97
|
||||
RibbonNoTextHistogram.tooltip=\u7D71\u8A08
|
||||
RibbonNoTextCharts.tooltip=\u5716\u8868
|
||||
RibbonNoTextTaskUsage.tooltip=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonNoTextResourceUsage.tooltip=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonNoTextNoSubWindow.tooltip=\u6C92\u6709\u5B50\u8996\u7A97
|
||||
RibbonTopBarSaveProject.text=\u5132\u5B58\u5C08\u6848
|
||||
RibbonTopBarSaveProject.tooltip=\u5132\u5B58\u5C08\u6848
|
||||
RibbonTopBarUndo.text=\u5FA9\u539F
|
||||
RibbonTopBarUndo.tooltip=\u5FA9\u539F
|
||||
RibbonTopBarRedo.text=\u91CD\u4F5C
|
||||
RibbonTopBarRedo.tooltip=\u91CD\u4F5C
|
||||
PrintPreviewFirst.tooltip=\u7B2C\u4E00\u9801
|
||||
PrintPreviewBack.tooltip=\u4E0A\u4E00\u9801
|
||||
PrintPreviewForward.tooltip = \u4E0B\u4E00\u9801
|
||||
PrintPreviewLast.tooltip = \u6700\u5F8C\u4E00\u9801
|
||||
PrintPreviewDown.tooltip = \u4E0A\u4E00\u9801
|
||||
PrintPreviewUp.tooltip = \u4E0B\u4E00\u9801
|
||||
PrintPreviewZoomOut.tooltip = \u62C9\u9060
|
||||
PrintPreviewZoomReset.tooltip = \u9810\u8A2D\u5927\u5C0F
|
||||
PrintPreviewZoomIn.tooltip = \u62C9\u8FD1
|
||||
PrintPreviewFormat.tooltip = \u9801\u9762\u8A2D\u5B9A
|
||||
PrintPreviewPrint.tooltip = \u5217\u5370
|
||||
PrintPreviewPDF.tooltip = PDF
|
||||
PrintPreviewLeftView.tooltip = \u986F\u793A\u5DE6\u534A\u908A
|
||||
PrintPreviewRightView.tooltip = \u986F\u793A\u53F3\u534A\u908A
|
||||
Help.text = \u8AAA\u660E
|
||||
ChooseFilter.tooltip = \u904E\u6FFE
|
||||
ChooseSort.tooltip = \u6392\u5E8F
|
||||
ChooseGroup.tooltip = \u7FA4\u7D44
|
232
projectlibre_ui/src/com/projectlibre1/menu/menu_zh_TW.properties
Normal file
232
projectlibre_ui/src/com/projectlibre1/menu/menu_zh_TW.properties
Normal file
|
@ -0,0 +1,232 @@
|
|||
#The contents of this file are subject to the Common Public Attribution License
|
||||
#Version 1.0 (the "License"); you may not use this file except in compliance with
|
||||
#the License. You may obtain a copy of the License at
|
||||
#http://www.projectlibre.com/license . The License is based on the Mozilla Public
|
||||
#License Version 1.1 but Sections 14 and 15 have been added to cover use of
|
||||
#software over a computer network and provide for limited attribution for the
|
||||
#Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
#with Exhibit B.
|
||||
#
|
||||
#Software distributed under the License is distributed on an "AS IS" basis,
|
||||
#WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
||||
#specific language governing rights and limitations under the License. The
|
||||
#Original Code is ProjectLibre and ProjectLibre.
|
||||
#The Original Developer is the Initial Developer and is both ProjectLibre, Inc and
|
||||
#ProjectLibre Inc. All portions of the code written by ProjectLibre are Copyright (c)
|
||||
#2006, 2008. All Rights Reserved. All portions of the code written by ProjectLibre
|
||||
#are Copyright (c) 2012. All Rights Reserved. Contributors ProjectLibre, Inc. and
|
||||
#ProjectLibre, Inc.
|
||||
#
|
||||
#Alternatively, the contents of this file may be used under the terms of the
|
||||
#ProjectLibre End-User License Agreement (the ProjectLibre License) in which case
|
||||
#the provisions of the ProjectLibre License are applicable instead of those above.
|
||||
#If you wish to allow use of your version of this file only under the terms of the
|
||||
#ProjectLibre License and not to allow others to use your version of this file under
|
||||
#the CPAL, indicate your decision by deleting the provisions above and replace them
|
||||
#with the notice and other provisions required by the Project Libre License. If you
|
||||
#do not delete the provisions above, a recipient may use your version of this file
|
||||
#under either the CPAL or the ProjectLibre Licenses.
|
||||
#
|
||||
#
|
||||
#[NOTE: The text of this Exhibit A may differ slightly from the text of the notices
|
||||
#in the Source Code files of the Original Code. You should use the text of this
|
||||
#Exhibit A rather than the text found in the Original Code Source Code for Your
|
||||
#Modifications.]
|
||||
#EXHIBIT B. Attribution Information both ProjectLibre and ProjectLibre required
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2012, ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): ProjectLibre, the updated version of
|
||||
#ProjectLibre
|
||||
#Attribution URL: http://www.projectlibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: projectlibre-logo.png with
|
||||
#alternatives listed on http://www.projectlibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com. The ProjectLibre logo should be located horizontally
|
||||
#aligned immediately above the ProjectLibre logo and left justified in alignment with the
|
||||
#ProjectLibre logo. The logo must be at least 144 x 31 pixels. When users click on the
|
||||
#"ProjectLibre" logo it must direct them back to http://www.projectlibre.com.
|
||||
#
|
||||
#Attribution Copyright Notice: Copyright (c) 2006, 2020 ProjectLibre, Inc.
|
||||
#Attribution Phrase (not exceeding 10 words): Powered by ProjectLibre, an open source
|
||||
#solution from ProjectLibre
|
||||
#Attribution URL: http://www.ProjectLibre.com
|
||||
#Graphic Image as provided in the Covered Code as file: ProjectLibre_logo.png with
|
||||
#alternatives listed on http://www.ProjectLibre.com/logo
|
||||
#
|
||||
#Display of Attribution Information is required in Larger Works which are defined in
|
||||
#the CPAL as a work which combines Covered Code or portions thereof with code not
|
||||
#governed by the terms of the CPAL. However, in addition to the other notice
|
||||
#obligations, all copies of the Covered Code in Executable and Source Code form
|
||||
#distributed must, as a form of attribution of the original author, include on each
|
||||
#user interface screen the "ProjectLibre" and \u201CProjectLibre\u201D logos visible to all users.
|
||||
#The ProjectLibre logo should be located horizontally aligned with the menu bar and left
|
||||
#justified on the top left of the screen adjacent to the File menu. \u00A0The logo must be
|
||||
#at least 100 x 25 pixels. When users click on the "ProjectLibre" logo it must direct them
|
||||
#back to http://www.ProjectLibre.com.
|
||||
#
|
||||
#
|
||||
# LOCALIZATION NOTES:
|
||||
#
|
||||
# The only lines to localize have the following suffixes:
|
||||
# .text
|
||||
# .title
|
||||
# .tooltip
|
||||
# .mnemonic (normally first letter of .text)
|
||||
# .accelerator (normally CTRL+first letter of .text)
|
||||
#
|
||||
|
||||
|
||||
ProjectRibbonTask.title = \u6A94\u6848
|
||||
TaskRibbonTask.title = \u4EFB\u52D9
|
||||
ResourceRibbonTask.title = \u8CC7\u6E90
|
||||
ViewRibbonTask.title = \u6AA2\u8996
|
||||
FileRibbonBand.title = \u6A94\u6848
|
||||
PrintRibbonBand.title = \u5217\u5370
|
||||
ClipboardRibbonBand.title = \u526A\u8CBC\u7C3F
|
||||
#EditingRibbonBand.title = \u7DE8\u8F2F
|
||||
TaskRibbonBand.title = \u4EFB\u52D9
|
||||
ResourceRibbonBand.title = \u8CC7\u6E90
|
||||
ProjectRibbonBand.title = \u5C08\u6848
|
||||
TaskViewsZoomRibbonBand.title = \u6AA2\u8996
|
||||
TaskViewsRibbonBand.title = \u4EFB\u52D9\u6AA2\u8996
|
||||
ResourceViewsZoomRibbonBand.title = \u6AA2\u8996
|
||||
ResourceViewsRibbonBand.title = \u8CC7\u6E90\u6AA2\u8996
|
||||
OtherViewsRibbonBand.title = \u5176\u4ED6\u6AA2\u8996
|
||||
SubViewsRibbonBand.title = \u6B21\u8981\u6AA2\u8996
|
||||
FiltersRibbonBand.title = \u904E\u6FFE
|
||||
RibbonNewProject.text =\u65B0\u589E
|
||||
RibbonNewProject.tooltip =\u65B0\u589E\u5C08\u6848
|
||||
RibbonOpenProject.text =\u958B\u555F
|
||||
RibbonOpenProject.tooltip =\u958B\u555F\u5C08\u6848
|
||||
RibbonSaveProject.text =\u5132\u5B58
|
||||
RibbonSaveProject.tooltip =\u5132\u5B58\u5C08\u6848
|
||||
RibbonSaveProjectAs.text =\u53E6\u5B58
|
||||
RibbonSaveProjectAs.tooltip =\u5132\u5B58\u70BA\u65B0\u5C08\u6848
|
||||
RibbonCloseProject.text =\u95DC\u9589
|
||||
RibbonCloseProject.tooltip =\u95DC\u9589\u5C08\u6848
|
||||
RibbonPrint.text =\u5217\u5370
|
||||
RibbonPrint.tooltip =\u5217\u5370\u7576\u524D\u6587\u4EF6.
|
||||
RibbonPrintPreview.text =\u9810\u89BD
|
||||
RibbonPrintPreview.tooltip =\u9810\u89BD\u5217\u5370
|
||||
RibbonPDF.text =PDF
|
||||
RibbonPDF.tooltip =PDF
|
||||
RibbonCut.text =\u526A\u4E0B
|
||||
RibbonCut.tooltip =\u526A\u4E0B
|
||||
RibbonCopy.text =\u8907\u88FD
|
||||
RibbonCopy.tooltip =\u8907\u88FD
|
||||
RibbonPaste.text =Paste
|
||||
RibbonPaste.tooltip =Paste
|
||||
RibbonDelete.text =\u522A\u9664
|
||||
RibbonDelete.tooltip =\u522A\u9664
|
||||
RibbonZoomIn.text =\u62C9\u8FD1
|
||||
RibbonZoomIn.tooltip =\u62C9\u8FD1
|
||||
RibbonZoomOut.text =\u62C9\u9060
|
||||
RibbonZoomOut.tooltip =\u62C9\u9060
|
||||
RibbonFind.text =\u5C0B\u627E
|
||||
RibbonFind.tooltip = \u5C0B\u627E
|
||||
RibbonScrollToTask.text = \u6372\u52D5\u81F3\u4EFB\u52D9
|
||||
RibbonScrollToTask.tooltip = \u6372\u52D5\u81F3\u4EFB\u52D9
|
||||
RibbonOutdent.text =\u6E1B\u5C11\u7E2E\u6392
|
||||
RibbonOutdent.tooltip =\u6E1B\u5C11\u7E2E\u6392
|
||||
RibbonIndent.text =\u589E\u52A0\u7E2E\u6392
|
||||
RibbonIndent.tooltip =\u589E\u52A0\u7E2E\u6392
|
||||
RibbonLink.text=\u9023\u7D50
|
||||
RibbonLink.tooltip=\u9023\u7D50
|
||||
RibbonUnlink.text=\u53CD\u9023\u7D50
|
||||
RibbonUnlink.tooltip=\u53CD\u9023\u7D50
|
||||
RibbonTaskInformation.text =\u8CC7\u8A0A
|
||||
RibbonTaskInformation.tooltip =\u4EFB\u52D9\u8CC7\u8A0A
|
||||
RibbonResourceInformation.text =\u8CC7\u8A0A
|
||||
RibbonResourceInformation.tooltip =\u8CC7\u6E90\u8CC7\u8A0A
|
||||
RibbonProjectInformation.text =\u8CC7\u8A0A
|
||||
RibbonProjectInformation.tooltip =\u5C08\u6848\u8CC7\u8A0A
|
||||
RibbonChangeWorkingTime.text=\u884C\u4E8B\u66C6
|
||||
RibbonChangeWorkingTime.tooltip=\u4FBF\u5DE5\u4F5C\u884C\u4E8B\u66C6
|
||||
RibbonNotes.text =\u7B46\u8A18
|
||||
RibbonNotes.tooltip =\u7B46\u8A18...
|
||||
RibbonInsert.text =\u63D2\u5165
|
||||
RibbonInsert.tooltip =\u63D2\u5165
|
||||
RibbonAssignResources.text=\u5206\u914D\u8CC7\u6E90
|
||||
RibbonAssignResources.tooltip=\u5206\u914D\u8CC7\u6E90
|
||||
RibbonProjectsDialog.text =\u5C08\u6848\u8996\u7A97
|
||||
RibbonProjectsDialog.tooltip =\u5C08\u6848
|
||||
RibbonUpdateTasks.text =\u66F4\u65B0
|
||||
RibbonUpdateTasks.tooltip =\u66F4\u65B0\u5C08\u6848...
|
||||
RibbonUpdateTasks.mnemonic = T
|
||||
RibbonUpdateProject.text =\u66F4\u65B0
|
||||
RibbonUpdateProject.tooltip =\u66F4\u65B0\u5C08\u6848...
|
||||
RibbonUpdateProject.mnemonic = P
|
||||
RibbonSaveBaseline.text =\u5132\u5B58\u57FA\u7DDA
|
||||
RibbonSaveBaseline.tooltip =\u5132\u5B58\u57FA\u7DDA...
|
||||
RibbonSaveBaseline.mnemonic = S
|
||||
RibbonClearBaseline.text =\u6E05\u9664\u57FA\u7DDA
|
||||
RibbonClearBaseline.tooltip =\u6E05\u9664\u57FA\u7DDA...
|
||||
RibbonClearBaseline.mnemonic = C
|
||||
RibbonGantt.text=\u7518\u7279
|
||||
RibbonGantt.tooltip=\u7518\u7279
|
||||
RibbonTrackingGantt.text=\u8FFD\u8E2A\u7518\u7279
|
||||
RibbonTrackingGantt.tooltip=\u8FFD\u8E2A\u7518\u7279
|
||||
RibbonTaskUsageDetail.text=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonTaskUsageDetail.tooltip=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonResourceUsageDetail.text=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonResourceUsageDetail.tooltip=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonNetwork.text=\u7DB2\u8DEF
|
||||
RibbonNetwork.tooltip=\u7DB2\u8DEF
|
||||
RibbonResources.text=\u8CC7\u6E90
|
||||
RibbonResources.tooltip=\u8CC7\u6E90
|
||||
RibbonProjects.text=\u5C08\u6848
|
||||
RibbonProjects.tooltip=\u5C08\u6848
|
||||
RibbonWBS.text=WBS
|
||||
RibbonWBS.tooltip=WBS
|
||||
RibbonRBS.text=RBS
|
||||
RibbonRBS.tooltip=RBS
|
||||
RibbonReport.text=\u56DE\u5831
|
||||
RibbonReport.tooltip=\u56DE\u5831
|
||||
RibbonHistogram.text=\u7D71\u8A08
|
||||
RibbonHistogram.tooltip=\u7D71\u8A08
|
||||
RibbonCharts.text=\u5716\u8868
|
||||
RibbonCharts.tooltip=\u5716\u8868
|
||||
RibbonTaskUsage.text=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonTaskUsage.tooltip=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonResourceUsage.text=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonResourceUsage.tooltip=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonNoSubWindow.text=\u6C92\u6709\u5B50\u8996\u7A97
|
||||
RibbonNoSubWindow.tooltip=\u6C92\u6709\u5B50\u8996\u7A97
|
||||
RibbonNoTextHistogram.tooltip=\u7D71\u8A08
|
||||
RibbonNoTextCharts.tooltip=\u5716\u8868
|
||||
RibbonNoTextTaskUsage.tooltip=\u4EFB\u52D9\u4F7F\u7528
|
||||
RibbonNoTextResourceUsage.tooltip=\u8CC7\u6E90\u4F7F\u7528
|
||||
RibbonNoTextNoSubWindow.tooltip=\u6C92\u6709\u5B50\u8996\u7A97
|
||||
RibbonTopBarSaveProject.text=\u5132\u5B58\u5C08\u6848
|
||||
RibbonTopBarSaveProject.tooltip=\u5132\u5B58\u5C08\u6848
|
||||
RibbonTopBarUndo.text=\u5FA9\u539F
|
||||
RibbonTopBarUndo.tooltip=\u5FA9\u539F
|
||||
RibbonTopBarRedo.text=\u91CD\u4F5C
|
||||
RibbonTopBarRedo.tooltip=\u91CD\u4F5C
|
||||
PrintPreviewFirst.tooltip=\u7B2C\u4E00\u9801
|
||||
PrintPreviewBack.tooltip=\u4E0A\u4E00\u9801
|
||||
PrintPreviewForward.tooltip = \u4E0B\u4E00\u9801
|
||||
PrintPreviewLast.tooltip = \u6700\u5F8C\u4E00\u9801
|
||||
PrintPreviewDown.tooltip = \u4E0A\u4E00\u9801
|
||||
PrintPreviewUp.tooltip = \u4E0B\u4E00\u9801
|
||||
PrintPreviewZoomOut.tooltip = \u62C9\u9060
|
||||
PrintPreviewZoomReset.tooltip = \u9810\u8A2D\u5927\u5C0F
|
||||
PrintPreviewZoomIn.tooltip = \u62C9\u8FD1
|
||||
PrintPreviewFormat.tooltip = \u9801\u9762\u8A2D\u5B9A
|
||||
PrintPreviewPrint.tooltip = \u5217\u5370
|
||||
PrintPreviewPDF.tooltip = PDF
|
||||
PrintPreviewLeftView.tooltip = \u986F\u793A\u5DE6\u534A\u908A
|
||||
PrintPreviewRightView.tooltip = \u986F\u793A\u53F3\u534A\u908A
|
||||
Help.text = \u8AAA\u660E
|
||||
ChooseFilter.tooltip = \u904E\u6FFE
|
||||
ChooseSort.tooltip = \u6392\u5E8F
|
||||
ChooseGroup.tooltip = \u7FA4\u7D44
|
|
@ -69,6 +69,8 @@ import java.awt.event.ActionEvent;
|
|||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.FocusEvent;
|
||||
import java.awt.event.FocusListener;
|
||||
import java.awt.event.ItemEvent;
|
||||
import java.awt.event.ItemListener;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.awt.event.WindowStateListener;
|
||||
|
@ -89,15 +91,20 @@ import java.util.HashSet;
|
|||
import java.util.Iterator;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.prefs.Preferences;
|
||||
|
||||
import javax.swing.Action;
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.Box;
|
||||
import javax.swing.BoxLayout;
|
||||
import javax.swing.ImageIcon;
|
||||
import javax.swing.InputMap;
|
||||
import javax.swing.JApplet;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JComponent;
|
||||
import javax.swing.JDialog;
|
||||
import javax.swing.JFrame;
|
||||
|
@ -123,6 +130,7 @@ import javax.swing.undo.CannotUndoException;
|
|||
import org.apache.batik.util.gui.resource.ActionMap;
|
||||
import org.apache.batik.util.gui.resource.MissingListenerException;
|
||||
import org.apache.commons.collections.Closure;
|
||||
import org.projectlibre.strings.Strings;
|
||||
import org.pushingpixels.flamingo.api.common.AbstractCommandButton;
|
||||
import org.pushingpixels.flamingo.api.ribbon.JRibbon;
|
||||
import org.pushingpixels.flamingo.api.ribbon.JRibbonFrame;
|
||||
|
@ -133,12 +141,14 @@ import com.projectlibre.ui.ribbon.CustomRibbonBandGenerator;
|
|||
import com.projectlibre.ui.ribbon.ProjectLibreRibbonUI;
|
||||
import com.projectlibre1.configuration.Configuration;
|
||||
import com.projectlibre1.configuration.FieldDictionary;
|
||||
import com.projectlibre1.configuration.Settings;
|
||||
import com.projectlibre1.contrib.ClassLoaderUtils;
|
||||
import com.projectlibre1.dialog.AboutDialog;
|
||||
import com.projectlibre1.dialog.AbstractDialog;
|
||||
import com.projectlibre1.dialog.BaselineDialog;
|
||||
import com.projectlibre1.dialog.FindDialog;
|
||||
import com.projectlibre1.dialog.HelpDialog;
|
||||
import com.projectlibre1.dialog.LocaleDialog;
|
||||
import com.projectlibre1.dialog.OpenProjectDialog;
|
||||
import com.projectlibre1.dialog.ProjectDialog;
|
||||
import com.projectlibre1.dialog.ProjectInformationDialog;
|
||||
|
@ -1028,6 +1038,7 @@ public class GraphicManager implements FrameHolder, NamedFrameListener, WindowS
|
|||
actionsMap.addHandler(ACTION_CALENDAR_OPTIONS, new CalendarOptionsAction());
|
||||
actionsMap.addHandler(ACTION_SAVE_BASELINE, new SaveBaselineAction());
|
||||
actionsMap.addHandler(ACTION_CLEAR_BASELINE, new ClearBaselineAction());
|
||||
actionsMap.addHandler(ACTION_LOCALE, new LocaleAction());
|
||||
actionsMap.addHandler(ACTION_LINK, new LinkAction());
|
||||
actionsMap.addHandler(ACTION_UNLINK, new UnlinkAction());
|
||||
actionsMap.addHandler(ACTION_ZOOM_IN, new ZoomInAction());
|
||||
|
@ -1606,6 +1617,17 @@ public class GraphicManager implements FrameHolder, NamedFrameListener, WindowS
|
|||
return isDocumentWritable();
|
||||
}
|
||||
}
|
||||
|
||||
public class LocaleAction extends MenuActionsMap.DocumentMenuAction {
|
||||
private static final long serialVersionUID = 1L;
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
setMeAsLastGraphicManager();
|
||||
|
||||
LocaleDialog localeDialog = LocaleDialog.getInstance(getGraphicManager());
|
||||
localeDialog.doModal();
|
||||
}
|
||||
}
|
||||
|
||||
public class LinkAction extends MenuActionsMap.DocumentMenuAction {
|
||||
private static final long serialVersionUID = 1L;
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
|
@ -2419,6 +2441,62 @@ protected boolean loadLocalDocument(String fileName,boolean merge){ //uses serve
|
|||
JComponent filesComponent=((DefaultFrameManager)getFrameManager()).getProjectComboPanel();
|
||||
filesComponent.setBackground(ProjectLibreRibbonUI.RIBBON_MENU_COLOR);
|
||||
fileSelector.add(filesComponent,BorderLayout.EAST);
|
||||
|
||||
|
||||
JPanel languageSelector=ribbon.getLanguageSelector();
|
||||
languageSelector.setLayout(new BorderLayout());
|
||||
languageSelector.setBackground(ProjectLibreRibbonUI.RIBBON_MENU_COLOR);
|
||||
|
||||
JButton localeButton=new JButton(IconManager.getIcon("menu16.locale"));
|
||||
localeButton.addActionListener(new ActionListener() {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
LocaleDialog localeDialog = LocaleDialog.getInstance(getGraphicManager());
|
||||
localeDialog.doModal();
|
||||
}
|
||||
});
|
||||
localeButton.setBorderPainted(false);
|
||||
localeButton.setFocusPainted(false);
|
||||
localeButton.setContentAreaFilled(false);
|
||||
languageSelector.add(localeButton,BorderLayout.EAST);
|
||||
|
||||
// String[] slocales=Settings.LANGUAGES.split(";");
|
||||
// String[] translatedLocales=new String[slocales.length];
|
||||
// Map<String, String> transOri=new HashMap<>();
|
||||
// Map<String, String> oriTrans=new HashMap<>();
|
||||
// for (int i=0; i<slocales.length;i++) {
|
||||
// if ("default".equals(slocales[i]))
|
||||
// translatedLocales[i]=Messages.getString("Spreadsheet.Project.default"); //re-use existing key
|
||||
// else if ("custom".equals(slocales[i]))
|
||||
// translatedLocales[i]=Messages.getString("PageSetupDialog.PaperFormat.Custom"); //re-use existing key
|
||||
// else translatedLocales[i]=slocales[i];
|
||||
// oriTrans.put(slocales[i], translatedLocales[i]);
|
||||
// transOri.put(translatedLocales[i], slocales[i]);
|
||||
// }
|
||||
// String[] currentTranslatedLocale=new String[] {oriTrans.get(Preferences.userNodeForPackage(ConfigurationFile.class).get("locale","default"))};
|
||||
// JComboBox languageCombo=new JComboBox(translatedLocales);
|
||||
// languageCombo.setSelectedItem(currentTranslatedLocale[0]);
|
||||
// languageCombo.addActionListener(new ActionListener() {
|
||||
//
|
||||
// @Override
|
||||
// public void actionPerformed(ActionEvent e) {
|
||||
// JComboBox cb = (JComboBox)e.getSource();
|
||||
// String language = (String)cb.getSelectedItem();
|
||||
// if (JOptionPane.YES_OPTION == Alert.confirmYesNo(Messages.getString("Message.languageChange"))){
|
||||
// currentTranslatedLocale[0]=language;
|
||||
// Preferences.userNodeForPackage(ConfigurationFile.class).put("locale",transOri.get(language));
|
||||
// }else {
|
||||
// languageCombo.setSelectedItem(currentTranslatedLocale[0]);
|
||||
// }
|
||||
//
|
||||
// }
|
||||
// });
|
||||
//
|
||||
//
|
||||
// languageCombo.setBackground(ProjectLibreRibbonUI.RIBBON_MENU_COLOR);
|
||||
// languageSelector.add(languageCombo,BorderLayout.EAST);
|
||||
|
||||
projectViews.setBorder(new EmptyBorder(0,0,0,0));
|
||||
|
||||
|
||||
|
|
|
@ -226,6 +226,8 @@ menu24.delegateTasks=delegatedTool.gif
|
|||
menu24.scrollToTask=scrollToTask.gif
|
||||
menu24.PDF=pdf.png
|
||||
menu.PDF=pdf16.png
|
||||
menu24.locale=globe24.png
|
||||
menu16.locale=globe16.png
|
||||
|
||||
format.other=otherFormat.gif
|
||||
|
||||
|
@ -266,6 +268,7 @@ ribbon.hint=help-hint.png
|
|||
ribbon.calendar=view-calendar.png
|
||||
ribbon.information=preferences-system-4.png
|
||||
ribbon.help=system-help-3.png
|
||||
ribbon.locale=globe24.png
|
||||
ribbon.multiproject=document-multiple.png
|
||||
ribbon.notes=text-field.png
|
||||
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 6.5 KiB |
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
|
@ -247,6 +247,7 @@ public class JRibbon extends JComponent {
|
|||
|
||||
//projectlibre
|
||||
protected JPanel fileSelector;
|
||||
protected JPanel languageSelector;
|
||||
protected JPanel projectViews;
|
||||
protected JLabel projectlibreLogo;
|
||||
|
||||
|
@ -269,6 +270,7 @@ public class JRibbon extends JComponent {
|
|||
|
||||
//projectlibre
|
||||
fileSelector=new JPanel();
|
||||
languageSelector=new JPanel();
|
||||
projectViews=new JPanel();
|
||||
projectlibreLogo=new JLabel();
|
||||
|
||||
|
@ -865,6 +867,11 @@ public class JRibbon extends JComponent {
|
|||
}
|
||||
|
||||
|
||||
public JPanel getLanguageSelector() {
|
||||
return languageSelector;
|
||||
}
|
||||
|
||||
|
||||
public JPanel getProjectViews() {
|
||||
return projectViews;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue