November 26, 2007

Birthday wishes in all languages

Language"Happy Birthday"
AfrikaansVeels geluk met jou verjaarsdag!
AlbanianUrime ditelindjen!
AlsatianGueter geburtsdaa!
AmharicMelkam lidet!
ArabicEid milaad saeed! or Kul sana wa inta/i tayeb/a! (masculine/feminine)
ArmenianTaredartzet shnorhavor! or Tsenund shnorhavor!
AssyrianEida D'moladukh Hawee Brikha!
Austrian-VienneseOis guade winsch i dia zum Gbuadsdog!
Aymara(Bolivia) Suma Urupnaya Cchuru Uromankja!
AzerbaijaniAd gununuz mubarek! -- for people older than you
Ad gunun mubarek! -- for people younger than you
BasqueZorionak!
Belauan-MicronesianUngil el cherellem!
Bengali(Bangladesh/India) Shuvo Jonmodin!
Bicol (Philippines)Maogmang Pagkamundag!
Bislama (Vanuatu)Hapi betde! or Yumi selebretem de blong bon blong yu!
BrazilParabŽns a voc !
ParabŽns a voc ,
nesta data querida muitas felicidades e muitos anos de vida.
BretonDeiz-ha-bloaz laouen deoc'h!
BulgarianChestit Rojden Den!
CambodianSom owie nek mein aryouk yrinyu!
CatalanPer molts anys! or Bon aniversari! or Moltes Felicitats!
ChamorroBiba Kumplianos!
Chinese-CantoneseSun Yat Fai Lok!
ChineseFuzhou San Ni Kuai Lo!
Chiness-HakkaSang Ngit Fai Lok!
Chinese-Mandarinqu ni sheng er kuai le
Chinese-ShanghaieseSan ruit kua lok!
Chinese-TiociuSe Jit khuai lak!
ChroniaPolla NA ZHSHS
CroatianSretan Rodendan!
CzechVsechno nejlepsi k Tvym narozeninam!!
DanishTillykke med fodselsdagen!
Dutch-AntwerpsNe gelukkege verjoardach!
Dutch-BilzersNe geleukkege verjoardoag!
Dutch-DrentsFellisiteert!
Dutch-FlemishGelukkige verjaardag! or Prettige verjaardag!
Dutch-FrisianFan herte lokwinske!
Dutch-LimburgsProficiat! or Perfisia!
Dutch-SpouwersNe geleukkege verjeurdoag!
Dutch-TwentsGefeliciteard met oen'n verjoardag!
Dutch Hartelijkgefeliciteerd! or Van harte gefeliciteerd met je verjaardag!
EnglishHappy Birthday!
EsperantoFelichan Naskightagon!
EstonianPalju onne sunnipaevaks!
EuskeraZorionak zure urtebetetze egunean!
Faroes ( Faroe island )Tillukku vid fodingardegnum!
FarsiTavalodet Mobarak!
FinnishHyvaa syntymapaivaa!
French (Canada)Bonne Fete!
FrenchJoyeux Anniversaire!
FrisianLokkiche jierdei!
Gaelic (Irish)L‡ breithe mhaith agat!
Gaelic (Scottish)Co` latha breith sona dhuibh!
Galician (Spain)Ledicia no teu cumpreanos!
GeorgianGilotcav dabadebis dges!
German-BadischAllis Guedi zu dim Fescht!
German-BavarianOis Guade zu Deim Geburdstog!
German-BerlinischAllet Jute ooch zum Jeburtstach! or Ick wuensch da allet Jute zum Jeburtstach!
German-Bernese Es Muentschi zum Geburri!
German-CamelottischEwllews Gewtew zewm Gewbewrtstewg. Mew!
German-FrankonianAllmecht! Iich wuensch Dir aan guuadn Gebuardsdooch!
German-LichtensteinHaerzliche Glueckwuensche zum Geburtstag!
German-MoselfraenkischHaezzlische Glickwunsch zem Gebordsdach!
German-PlattdeutschIck wuensch Di allns Gode ton Geburtsdach!
German-RhoihessischIch gratelier Dir aach zum Geburtstag!
German-RuhrAllet Gute zum Gebuatstach!
German-SaarlaendischAlles Gudde for dei Gebordsdaach!
German-SaechsischHerzlischen Gliggwunsch zum Geburdsdaach!
German-SchwaebischAelles Guade zom Gebordzdag!
German-WienerischOis Guade zum Geburdsdog!
GermanAlles Gute zum Geburtstag!
GreekEytyxismena Genethlia! or Chronia Pola!
GreenlandicInuuinni pilluarit!
Gronings (Netherlands)Fielsteerd mit joen verjoardag!
Gujarati (India)Janma Divas Mubarak!
Gujrati (Pakistan)Saal Mubarak!
Guarani (Paraguay Indian)]Vy-Apave Nde Arambotyre!
HawaiianHau`oli la hanau!
HebrewYom Huledet Same'ach!
Hiligaynon (Philippines)Masadya gid nga adlaw sa imo pagkatawo!
Hindi (India)Janam Din ki badhai! or Janam Din ki shubkamnaayein!
HungarianBoldog szuletesnapot! or Isten eltessen!
IcelandicTil hamingju med afmaelisdaginn!
IndonesianSelamat Ulang Tahun!
Irish-gaelicLa-breithe mhaith agat! or Co` latha breith sona dhut! or Breithla Shona Dhuit!
ItalianBuon Compleanno!
Italian (Piedmont)Bun Cumpleani!
Italian (Romagna)At faz tent avguri ad bon cumplean!
JapaneseOtanjou-bi Omedetou Gozaimasu!
Javaans-IndonesiaSlamet Ulang Taunmoe!
JerriaisBouon Anniversaithe!
Kannada (India)Huttida Habba Subashayagalu!
Kapangpangan (Philippines)Mayap a Kebaitan
Kashmiri (India)Voharvod Mubarak Chuy!
Kazakh (Kazakstan)Tughan kuninmen!
KlingonQuchjaj qoSlIj!
KoreanSaeng il chuk ha ham ni da!
KurdishRojbun a te piroz be!
KyrgyzTulgan kunum menen!
LatinFortuna dies natalis!
LatvianDaudz laimes dzimsanas diena!
LithuanianSveikinu su gimtadieniu! or Geriausi linkejimaigimtadienio progal
LugandaNkwagaliza amazalibwa go amalungi!
LuxembourgeoisVill Gleck fir daei Geburtsdaag!
MacedonianSreken roden den!
Malayalam (India)Pirannal Aasamsakal! or Janmadinasamsakal!
MalaysianSelamat Hari Jadi!
MalteseNifrahlek ghal gheluq sninek!
MaoriKia huritau ki a koe!
Marathi (India)Wadhdiwasachya Shubhechha!
MauritianKreol mo swet u en bonlaniverser!
Mbula (Umboi Island, Papua New Guinea)Leleng ambai pa mbeng ku taipet i!
MongolianTorson odriin mend hurgee!
Navajobil hoozho bi'dizhchi-neeji' 'aneilkaah!
Niederdeutsch (North Germany)Ick gratuleer di scheun!
NepaliJanma dhin ko Subha kamana!
NorwegianGratulerer med dagen!
Oriya (India)Janmadina Abhinandan!
Papiamento (lower Dutch Antilles)Masha Pabien I hopi aña mas!
Pashto (Afganistan)Padayish rawaz day unbaraksha!
PersianTavalodet Mobarak!
Pinoy (Philippines)Maligayang kaarawan sa iyo!
PolishWszystkiego Najlepszego! or Wszystkiego najlepszego zokazji urodzin!
wszystkiegonajlepszego z okazji urodzin
Portuguese (Brazil)Parabens pelo seu aniversario! or Parabenspara voce! or
Parabense muitas felicidades!
PortugueseFeliz Aniversario! or Parabens!
Punjabi (India)Janam din diyan wadhayian!
Rajasthani (India)Janam ghaanth ri badhai, khoob jeeyo!
Romanian La Multi Ani!
Rosarino Basico (Argentina)Feneligiz Cunumplegeanagonos!
RussianS dniom razhdjenia! or Pazdravliayu s dniom razhdjenia!
Sami/LappishLihkos Riegadanbeaivvis!
SamoanManuia lou aso fanau!
Sanskrit (India)Ravihi janmadinam aacharati!
Sardinian (Italy)Achent'annos! Achent'annos!
Schwyzerduetsch (Swiss German)Vill Glück zum Geburri!
SerbianSrecan Rodjendan!
SlovakVsetko najlepsie k narodeninam!
SloveneVse najboljse za rojstni dan!
SothoMasego motsatsing la psalo!
SpanishFeliz Cumplea–os!
Sri LankanSuba Upan dinayak vewa!
Sundanese Wilujeng Tepang Taun!
SurinameseMi fresteri ju!
SwahiliHongera! or Heri ya Siku kuu!
SwedishGrattis pŒ fšdelsedagen
SyriacTahnyotho or brigo!
Tagalog (Philippines)Maligayang Bati Sa Iyong Kaarawan!
TaiwaneseSan leaz quiet lo!
Tamil (India)Piranda naal vaazhthukkal!
Telugu (India)Janmadina subha kankshalu!
TeluguPuttina Roju Shubakanksalu!
ThaiSuk San Wan Keut!
TibetanDroonkher Tashi Delek!
Tulu(Karnataka - India)Putudina dina saukhya!
TurkishDogum gunun kutlu olsun!
UkrainianMnohiya lita! or Z dnem narodjennia!
Urdu (India)Janam Din Mubarak
Urdu (Pakistan)Saalgirah Mubarak!
VietnameseChuc Mung Sinh Nhat!
Visayan (Philippines)Malipayong adlaw nga natawhan!
WelshPenblwydd Hapus i Chi!
Xhosa (South Afican)Imini emandi kuwe!
YiddishA Freilekhn Gebortstog!
Yoruba(Nigeria) Eku Ojobi!
Zulu (South Afican)Ilanga elimndandi kuwe!

November 24, 2007

Reading and writting from TiniFile (to persists the data)

TIniFile is a low-level wrapper for the 16-bit Windows 3.x INI file system that enables storage and retrieval of application-specific information and settings in an application-specific INI file.

Unit
inifiles

Description
TIniFile enables handling the storage and retrieval of application-specific information and settings in a Windows 3.x INI file. The INI file text format is the standard way for Windows 3.x applications to store and retrieve application settings from session to session. An INI file stores information in logical groupings, called “sections.” For example, the WIN.INI file contains a section called “[Desktop]”. Within each section, actual data values are stored in named keys. Keys take the form:

[keynamegt]=[value]

The FileName passed to a TIniFile object when it is created is the name of the INI file the object accesses.

Note: Under 32-bit Windows systems, applications typically replace INI files with the system registry where all applications store and retrieve their settings. Delphi provides additional classes for handling the system registry. TRegistry encapsulates the system registry. TRegistryIniFile also encapsulates the registry, but shares a common ancestor with TIniFile so that the same code can access entries stored in either format.

Ex:

This example reads strings in the DELPHI32.INI file and displays them on the form.Before you run this example, you must add the IniFiles unit to the uses clause of your unit.

procedure TForm1.FormActivate(Sender: TObject);
var DelphiIni: TIniFile;

begin

Canvas.TextOut(20, 10, 'VARIOUS DELPHI SETTINGS');

DelphiIni := TIniFile.Create('Delphi32.Ini');

with DelphiIni do begin

with Canvas do

begin

TextOut(10, 50, 'Editor Font = ' + ReadString('Editor', 'FontName', 'ERROR')); TextOut(10, 70, 'Search Path = ' + ReadString('Library', 'SearchPath', 'ERROR')); TextOut(10, 90, 'Component Library = ' +
ReadString('Library', 'ComponentLibrary', 'ERROR')); TextOut(10, 110, 'VBX Directory = ' + ReadString('VBX', 'VBXDir', 'ERROR'));

TextOut(10, 130, 'VBX Unit Directory = ' + ReadString('VBX', 'UnitDir', 'ERROR')); end;

end;

DelphiIni.Free;

end;

Ex2:

This example reads the Transfer section of the DELPHI32.INI file into a memo and changes one of the strings in the INI file when Button1 is clicked. When Button2 is clicked, the DELPHI32.INI file is restored to its initial state, using the values stored in the memo.Before you run this example, you must add the IniFiles unit to the uses clause of your unit.
Warning: Do not click button2 before you have clicked button1!

procedure TForm1.Button1Click(Sender: TObject);
var DelphiIni: TIniFile;

begin DelphiIni := TIniFile.Create('c:\windows\delphi32.ini');

Memo1.Clear;

DelphiIni.ReadSectionValues('Transfer', Memo1.Lines);

if Memo1.Lines.Values['Title1'] <> 'Picture Painter' then

DelphiIni.WriteString('Transfer', 'Title1', 'Picture Painter');

DelphiIni.Free;

end;


procedure TForm1.Button2Click(Sender: TObject);
var DelphiIni: TIniFile;

begin
DelphiIni := TIniFile.Create('c:\windows\delphi32.ini');
{ if the entry wasn’t there before, delete it now }

if Memo1.Lines.Values['Title1'] = '' then

DelphiIni.DeleteKey('Transfer', 'Title1') { otherwise, restore the old value }

else

DelphiIni.WriteString('Transfer', 'Title1', Memo1.Lines.Values['Title1']);

DelphiIni.Free;

end;

November 19, 2007

Delphi


Language Overview


Delphi is a high-level, compiled, strongly typed language that supports structured and object-oriented design.

Based on Object Pascal, its benefits include easy-to-read code, quick compilation, and the use of multiple unit files formodular programming.
Delphi has special features that support Borland's component framework and RADenvironment. For the most part, descriptions and examples in this language guide assume that you are using Borlanddevelopment tools.

Most developers using Borland software development tools write and compile their code in the integrateddevelopment environment (IDE). Borland development tools handle many details of setting up projects and sourcefiles, such as maintenance of dependency information among units. The product also places constraints on programorganization that are not, strictly speaking, part of the Object Pascal language specification. For example, Borlanddevelopment tools enforce certain file- and program-naming conventions that you can avoid if you write yourprograms outside of the IDE and compile them from the command prompt.

This language guide generally assumes that you are working in the IDE and that you are building applications thatuse the Borland Visual Component Library (VCL). Occasionally, however, Delphi-specific rules are distinguishedfrom rules that apply to all Object Pascal programming. This text covers both the Win32 Delphi language compiler,and the Delphi for .NET language compiler. Platform-specific language differences and features are noted wherenecessary.This section covers the following topics:Program Organization. Covers the basic language features that allow you to partition your application into unitsand namespaces.Example Programs. Small examples of both console and GUI applications are shown, with basic instructionson running the compiler from the command-line.Program OrganizationDelphi programs are usually divided into source-code modules called units.

Most programs begin with a programheading, which specifies a name for the program. The program heading is followed by an optional uses clause, thena block of declarations and statements. The uses clause lists units that are linked into the program; these units,which can be shared by different programs, often have uses clauses of their own.The uses clause provides the compiler with information about dependencies among modules. Because thisinformation is stored in the modules themselves, most Delphi language programs do not require makefiles, headerfiles, or preprocessor "include" directives.Delphi Source FilesThe compiler expects to find

Delphi source code in files of three kinds:Unit source files (which end with the .pas extension)Project files (which end with the .dpr extension)Package source files (which end with the .dpk extension)Unit source files typically contain most of the code in an application. Each application has a single project file andseveral unit files; the project file, which corresponds to the program file in traditional Pascal, organizes the unit filesinto an application. Borland development tools automatically maintain a project file for each application.If you are compiling a program from the command line, you can put all your source code into unit (.pas) files. If youuse the IDE to build your application, it will produce a project (.dpr) file.Package source files are similar to project files, but they are used to construct special dynamically linkable librariescalled packages.