From baf49b0e01f0e601d28128d4ba522f2f15244ad5 Mon Sep 17 00:00:00 2001 From: Tor Norbye Date: Mon, 7 May 2012 15:13:14 -0700 Subject: Add WindowBuilder NLS support This changeset adds back portions of the WindowBuilder NLS support into the propertysheet library such that the locale chooser etc can for example use the language flags. Change-Id: I3fee0c876a1fb57a1747075043c7e10eac9da880 --- propertysheet/.gitignore | 6 +- .../org/eclipse/wb/core/controls/CTableCombo.java | 690 +++++++++++++++++++++ .../eclipse/wb/internal/core/DesignerPlugin.java | 2 +- .../wb/internal/core/icons/nls/add_source.gif | Bin 0 -> 1706 bytes .../wb/internal/core/icons/nls/add_source.png | Bin 0 -> 2523 bytes .../core/icons/nls/externalize_strings.gif | Bin 0 -> 1046 bytes .../icons/nls/externalize_strings_disabled.gif | Bin 0 -> 1036 bytes .../wb/internal/core/icons/nls/extstr_wiz.png | Bin 0 -> 6405 bytes .../wb/internal/core/icons/nls/flags/ad.png | Bin 0 -> 643 bytes .../wb/internal/core/icons/nls/flags/ae.png | Bin 0 -> 408 bytes .../wb/internal/core/icons/nls/flags/af.png | Bin 0 -> 604 bytes .../wb/internal/core/icons/nls/flags/ag.png | Bin 0 -> 591 bytes .../wb/internal/core/icons/nls/flags/ai.png | Bin 0 -> 643 bytes .../wb/internal/core/icons/nls/flags/al.png | Bin 0 -> 600 bytes .../wb/internal/core/icons/nls/flags/am.png | Bin 0 -> 497 bytes .../wb/internal/core/icons/nls/flags/an.png | Bin 0 -> 488 bytes .../wb/internal/core/icons/nls/flags/ao.png | Bin 0 -> 428 bytes .../wb/internal/core/icons/nls/flags/ar.png | Bin 0 -> 506 bytes .../wb/internal/core/icons/nls/flags/as.png | Bin 0 -> 647 bytes .../wb/internal/core/icons/nls/flags/at.png | Bin 0 -> 403 bytes .../wb/internal/core/icons/nls/flags/au.png | Bin 0 -> 673 bytes .../wb/internal/core/icons/nls/flags/aw.png | Bin 0 -> 524 bytes .../wb/internal/core/icons/nls/flags/ax.png | Bin 0 -> 663 bytes .../wb/internal/core/icons/nls/flags/az.png | Bin 0 -> 589 bytes .../wb/internal/core/icons/nls/flags/ba.png | Bin 0 -> 593 bytes .../wb/internal/core/icons/nls/flags/bb.png | Bin 0 -> 585 bytes .../wb/internal/core/icons/nls/flags/bd.png | Bin 0 -> 504 bytes .../wb/internal/core/icons/nls/flags/be.png | Bin 0 -> 449 bytes .../wb/internal/core/icons/nls/flags/bf.png | Bin 0 -> 497 bytes .../wb/internal/core/icons/nls/flags/bg.png | Bin 0 -> 462 bytes .../wb/internal/core/icons/nls/flags/bh.png | Bin 0 -> 457 bytes .../wb/internal/core/icons/nls/flags/bi.png | Bin 0 -> 675 bytes .../wb/internal/core/icons/nls/flags/bj.png | Bin 0 -> 486 bytes .../wb/internal/core/icons/nls/flags/bm.png | Bin 0 -> 611 bytes .../wb/internal/core/icons/nls/flags/bn.png | Bin 0 -> 639 bytes .../wb/internal/core/icons/nls/flags/bo.png | Bin 0 -> 500 bytes .../wb/internal/core/icons/nls/flags/br.png | Bin 0 -> 593 bytes .../wb/internal/core/icons/nls/flags/bs.png | Bin 0 -> 526 bytes .../wb/internal/core/icons/nls/flags/bt.png | Bin 0 -> 631 bytes .../wb/internal/core/icons/nls/flags/bv.png | Bin 0 -> 512 bytes .../wb/internal/core/icons/nls/flags/bw.png | Bin 0 -> 443 bytes .../wb/internal/core/icons/nls/flags/by.png | Bin 0 -> 514 bytes .../wb/internal/core/icons/nls/flags/bz.png | Bin 0 -> 600 bytes .../wb/internal/core/icons/nls/flags/ca.png | Bin 0 -> 628 bytes .../wb/internal/core/icons/nls/flags/catalonia.png | Bin 0 -> 398 bytes .../wb/internal/core/icons/nls/flags/cc.png | Bin 0 -> 625 bytes .../wb/internal/core/icons/nls/flags/cd.png | Bin 0 -> 528 bytes .../wb/internal/core/icons/nls/flags/cf.png | Bin 0 -> 614 bytes .../wb/internal/core/icons/nls/flags/cg.png | Bin 0 -> 521 bytes .../wb/internal/core/icons/nls/flags/ch.png | Bin 0 -> 367 bytes .../wb/internal/core/icons/nls/flags/ci.png | Bin 0 -> 453 bytes .../wb/internal/core/icons/nls/flags/ck.png | Bin 0 -> 586 bytes .../wb/internal/core/icons/nls/flags/cl.png | Bin 0 -> 450 bytes .../wb/internal/core/icons/nls/flags/cm.png | Bin 0 -> 525 bytes .../wb/internal/core/icons/nls/flags/cn.png | Bin 0 -> 472 bytes .../wb/internal/core/icons/nls/flags/co.png | Bin 0 -> 483 bytes .../wb/internal/core/icons/nls/flags/cr.png | Bin 0 -> 477 bytes .../wb/internal/core/icons/nls/flags/cs.png | Bin 0 -> 439 bytes .../wb/internal/core/icons/nls/flags/cu.png | Bin 0 -> 563 bytes .../wb/internal/core/icons/nls/flags/cv.png | Bin 0 -> 529 bytes .../wb/internal/core/icons/nls/flags/cx.png | Bin 0 -> 608 bytes .../wb/internal/core/icons/nls/flags/cy.png | Bin 0 -> 428 bytes .../wb/internal/core/icons/nls/flags/cz.png | Bin 0 -> 476 bytes .../wb/internal/core/icons/nls/flags/de.png | Bin 0 -> 545 bytes .../wb/internal/core/icons/nls/flags/dj.png | Bin 0 -> 572 bytes .../wb/internal/core/icons/nls/flags/dk.png | Bin 0 -> 495 bytes .../wb/internal/core/icons/nls/flags/dm.png | Bin 0 -> 620 bytes .../wb/internal/core/icons/nls/flags/do.png | Bin 0 -> 508 bytes .../wb/internal/core/icons/nls/flags/dz.png | Bin 0 -> 582 bytes .../wb/internal/core/icons/nls/flags/ec.png | Bin 0 -> 500 bytes .../wb/internal/core/icons/nls/flags/ee.png | Bin 0 -> 429 bytes .../wb/internal/core/icons/nls/flags/eg.png | Bin 0 -> 465 bytes .../wb/internal/core/icons/nls/flags/eh.png | Bin 0 -> 508 bytes .../wb/internal/core/icons/nls/flags/england.png | Bin 0 -> 496 bytes .../wb/internal/core/icons/nls/flags/er.png | Bin 0 -> 653 bytes .../wb/internal/core/icons/nls/flags/es.png | Bin 0 -> 469 bytes .../wb/internal/core/icons/nls/flags/et.png | Bin 0 -> 592 bytes .../core/icons/nls/flags/europeanunion.png | Bin 0 -> 479 bytes .../wb/internal/core/icons/nls/flags/fam.png | Bin 0 -> 532 bytes .../wb/internal/core/icons/nls/flags/fi.png | Bin 0 -> 489 bytes .../wb/internal/core/icons/nls/flags/fj.png | Bin 0 -> 610 bytes .../wb/internal/core/icons/nls/flags/fk.png | Bin 0 -> 648 bytes .../internal/core/icons/nls/flags/flag_empty.png | Bin 0 -> 403 bytes .../wb/internal/core/icons/nls/flags/fm.png | Bin 0 -> 552 bytes .../wb/internal/core/icons/nls/flags/fo.png | Bin 0 -> 474 bytes .../wb/internal/core/icons/nls/flags/fr.png | Bin 0 -> 545 bytes .../wb/internal/core/icons/nls/flags/ga.png | Bin 0 -> 489 bytes .../wb/internal/core/icons/nls/flags/gb.png | Bin 0 -> 599 bytes .../wb/internal/core/icons/nls/flags/gd.png | Bin 0 -> 637 bytes .../wb/internal/core/icons/nls/flags/ge.png | Bin 0 -> 594 bytes .../wb/internal/core/icons/nls/flags/gf.png | Bin 0 -> 545 bytes .../wb/internal/core/icons/nls/flags/gh.png | Bin 0 -> 490 bytes .../wb/internal/core/icons/nls/flags/gi.png | Bin 0 -> 463 bytes .../wb/internal/core/icons/nls/flags/gl.png | Bin 0 -> 470 bytes .../wb/internal/core/icons/nls/flags/gm.png | Bin 0 -> 493 bytes .../wb/internal/core/icons/nls/flags/gn.png | Bin 0 -> 480 bytes .../wb/internal/core/icons/nls/flags/gp.png | Bin 0 -> 488 bytes .../wb/internal/core/icons/nls/flags/gq.png | Bin 0 -> 537 bytes .../wb/internal/core/icons/nls/flags/gr.png | Bin 0 -> 487 bytes .../wb/internal/core/icons/nls/flags/gs.png | Bin 0 -> 630 bytes .../wb/internal/core/icons/nls/flags/gt.png | Bin 0 -> 493 bytes .../wb/internal/core/icons/nls/flags/gu.png | Bin 0 -> 509 bytes .../wb/internal/core/icons/nls/flags/gw.png | Bin 0 -> 516 bytes .../wb/internal/core/icons/nls/flags/gy.png | Bin 0 -> 645 bytes .../wb/internal/core/icons/nls/flags/hk.png | Bin 0 -> 527 bytes .../wb/internal/core/icons/nls/flags/hm.png | Bin 0 -> 673 bytes .../wb/internal/core/icons/nls/flags/hn.png | Bin 0 -> 537 bytes .../wb/internal/core/icons/nls/flags/hr.png | Bin 0 -> 524 bytes .../wb/internal/core/icons/nls/flags/ht.png | Bin 0 -> 487 bytes .../wb/internal/core/icons/nls/flags/hu.png | Bin 0 -> 432 bytes .../wb/internal/core/icons/nls/flags/id.png | Bin 0 -> 430 bytes .../wb/internal/core/icons/nls/flags/ie.png | Bin 0 -> 481 bytes .../wb/internal/core/icons/nls/flags/il.png | Bin 0 -> 431 bytes .../wb/internal/core/icons/nls/flags/in.png | Bin 0 -> 503 bytes .../wb/internal/core/icons/nls/flags/io.png | Bin 0 -> 658 bytes .../wb/internal/core/icons/nls/flags/iq.png | Bin 0 -> 515 bytes .../wb/internal/core/icons/nls/flags/ir.png | Bin 0 -> 512 bytes .../wb/internal/core/icons/nls/flags/is.png | Bin 0 -> 532 bytes .../wb/internal/core/icons/nls/flags/it.png | Bin 0 -> 420 bytes .../wb/internal/core/icons/nls/flags/jm.png | Bin 0 -> 637 bytes .../wb/internal/core/icons/nls/flags/jo.png | Bin 0 -> 473 bytes .../wb/internal/core/icons/nls/flags/jp.png | Bin 0 -> 420 bytes .../wb/internal/core/icons/nls/flags/ke.png | Bin 0 -> 569 bytes .../wb/internal/core/icons/nls/flags/kg.png | Bin 0 -> 510 bytes .../wb/internal/core/icons/nls/flags/kh.png | Bin 0 -> 549 bytes .../wb/internal/core/icons/nls/flags/ki.png | Bin 0 -> 656 bytes .../wb/internal/core/icons/nls/flags/km.png | Bin 0 -> 577 bytes .../wb/internal/core/icons/nls/flags/kn.png | Bin 0 -> 604 bytes .../wb/internal/core/icons/nls/flags/kp.png | Bin 0 -> 561 bytes .../wb/internal/core/icons/nls/flags/kr.png | Bin 0 -> 592 bytes .../wb/internal/core/icons/nls/flags/kw.png | Bin 0 -> 486 bytes .../wb/internal/core/icons/nls/flags/ky.png | Bin 0 -> 643 bytes .../wb/internal/core/icons/nls/flags/kz.png | Bin 0 -> 616 bytes .../wb/internal/core/icons/nls/flags/la.png | Bin 0 -> 563 bytes .../wb/internal/core/icons/nls/flags/lb.png | Bin 0 -> 517 bytes .../wb/internal/core/icons/nls/flags/lc.png | Bin 0 -> 520 bytes .../wb/internal/core/icons/nls/flags/li.png | Bin 0 -> 537 bytes .../wb/internal/core/icons/nls/flags/lk.png | Bin 0 -> 627 bytes .../wb/internal/core/icons/nls/flags/lr.png | Bin 0 -> 466 bytes .../wb/internal/core/icons/nls/flags/ls.png | Bin 0 -> 628 bytes .../wb/internal/core/icons/nls/flags/lt.png | Bin 0 -> 508 bytes .../wb/internal/core/icons/nls/flags/lu.png | Bin 0 -> 481 bytes .../wb/internal/core/icons/nls/flags/lv.png | Bin 0 -> 465 bytes .../wb/internal/core/icons/nls/flags/ly.png | Bin 0 -> 419 bytes .../wb/internal/core/icons/nls/flags/ma.png | Bin 0 -> 432 bytes .../wb/internal/core/icons/nls/flags/mc.png | Bin 0 -> 380 bytes .../wb/internal/core/icons/nls/flags/md.png | Bin 0 -> 566 bytes .../wb/internal/core/icons/nls/flags/me.png | Bin 0 -> 448 bytes .../wb/internal/core/icons/nls/flags/mg.png | Bin 0 -> 453 bytes .../wb/internal/core/icons/nls/flags/mh.png | Bin 0 -> 628 bytes .../wb/internal/core/icons/nls/flags/mk.png | Bin 0 -> 664 bytes .../wb/internal/core/icons/nls/flags/ml.png | Bin 0 -> 474 bytes .../wb/internal/core/icons/nls/flags/mm.png | Bin 0 -> 483 bytes .../wb/internal/core/icons/nls/flags/mn.png | Bin 0 -> 492 bytes .../wb/internal/core/icons/nls/flags/mo.png | Bin 0 -> 588 bytes .../wb/internal/core/icons/nls/flags/mp.png | Bin 0 -> 597 bytes .../wb/internal/core/icons/nls/flags/mq.png | Bin 0 -> 655 bytes .../wb/internal/core/icons/nls/flags/mr.png | Bin 0 -> 569 bytes .../wb/internal/core/icons/nls/flags/ms.png | Bin 0 -> 614 bytes .../wb/internal/core/icons/nls/flags/mt.png | Bin 0 -> 420 bytes .../wb/internal/core/icons/nls/flags/mu.png | Bin 0 -> 496 bytes .../wb/internal/core/icons/nls/flags/mv.png | Bin 0 -> 542 bytes .../wb/internal/core/icons/nls/flags/mw.png | Bin 0 -> 529 bytes .../wb/internal/core/icons/nls/flags/mx.png | Bin 0 -> 574 bytes .../wb/internal/core/icons/nls/flags/my.png | Bin 0 -> 571 bytes .../wb/internal/core/icons/nls/flags/mz.png | Bin 0 -> 584 bytes .../wb/internal/core/icons/nls/flags/na.png | Bin 0 -> 647 bytes .../wb/internal/core/icons/nls/flags/nc.png | Bin 0 -> 591 bytes .../wb/internal/core/icons/nls/flags/ne.png | Bin 0 -> 537 bytes .../wb/internal/core/icons/nls/flags/nf.png | Bin 0 -> 602 bytes .../wb/internal/core/icons/nls/flags/ng.png | Bin 0 -> 482 bytes .../wb/internal/core/icons/nls/flags/ni.png | Bin 0 -> 508 bytes .../wb/internal/core/icons/nls/flags/nl.png | Bin 0 -> 453 bytes .../wb/internal/core/icons/nls/flags/no.png | Bin 0 -> 512 bytes .../wb/internal/core/icons/nls/flags/np.png | Bin 0 -> 443 bytes .../wb/internal/core/icons/nls/flags/nr.png | Bin 0 -> 527 bytes .../wb/internal/core/icons/nls/flags/nu.png | Bin 0 -> 572 bytes .../wb/internal/core/icons/nls/flags/nz.png | Bin 0 -> 639 bytes .../wb/internal/core/icons/nls/flags/om.png | Bin 0 -> 478 bytes .../wb/internal/core/icons/nls/flags/pa.png | Bin 0 -> 519 bytes .../wb/internal/core/icons/nls/flags/pe.png | Bin 0 -> 397 bytes .../wb/internal/core/icons/nls/flags/pf.png | Bin 0 -> 498 bytes .../wb/internal/core/icons/nls/flags/pg.png | Bin 0 -> 593 bytes .../wb/internal/core/icons/nls/flags/ph.png | Bin 0 -> 538 bytes .../wb/internal/core/icons/nls/flags/pk.png | Bin 0 -> 569 bytes .../wb/internal/core/icons/nls/flags/pl.png | Bin 0 -> 374 bytes .../wb/internal/core/icons/nls/flags/pm.png | Bin 0 -> 689 bytes .../wb/internal/core/icons/nls/flags/pn.png | Bin 0 -> 657 bytes .../wb/internal/core/icons/nls/flags/pr.png | Bin 0 -> 556 bytes .../wb/internal/core/icons/nls/flags/ps.png | Bin 0 -> 472 bytes .../wb/internal/core/icons/nls/flags/pt.png | Bin 0 -> 554 bytes .../wb/internal/core/icons/nls/flags/pw.png | Bin 0 -> 550 bytes .../wb/internal/core/icons/nls/flags/py.png | Bin 0 -> 473 bytes .../wb/internal/core/icons/nls/flags/qa.png | Bin 0 -> 450 bytes .../wb/internal/core/icons/nls/flags/re.png | Bin 0 -> 545 bytes .../wb/internal/core/icons/nls/flags/ro.png | Bin 0 -> 495 bytes .../wb/internal/core/icons/nls/flags/rs.png | Bin 0 -> 423 bytes .../wb/internal/core/icons/nls/flags/ru.png | Bin 0 -> 420 bytes .../wb/internal/core/icons/nls/flags/rw.png | Bin 0 -> 533 bytes .../wb/internal/core/icons/nls/flags/sa.png | Bin 0 -> 551 bytes .../wb/internal/core/icons/nls/flags/sb.png | Bin 0 -> 624 bytes .../wb/internal/core/icons/nls/flags/sc.png | Bin 0 -> 608 bytes .../wb/internal/core/icons/nls/flags/scotland.png | Bin 0 -> 649 bytes .../wb/internal/core/icons/nls/flags/sd.png | Bin 0 -> 492 bytes .../wb/internal/core/icons/nls/flags/se.png | Bin 0 -> 542 bytes .../wb/internal/core/icons/nls/flags/sg.png | Bin 0 -> 468 bytes .../wb/internal/core/icons/nls/flags/sh.png | Bin 0 -> 645 bytes .../wb/internal/core/icons/nls/flags/si.png | Bin 0 -> 510 bytes .../wb/internal/core/icons/nls/flags/sj.png | Bin 0 -> 512 bytes .../wb/internal/core/icons/nls/flags/sk.png | Bin 0 -> 562 bytes .../wb/internal/core/icons/nls/flags/sl.png | Bin 0 -> 436 bytes .../wb/internal/core/icons/nls/flags/sm.png | Bin 0 -> 502 bytes .../wb/internal/core/icons/nls/flags/sn.png | Bin 0 -> 532 bytes .../wb/internal/core/icons/nls/flags/so.png | Bin 0 -> 527 bytes .../wb/internal/core/icons/nls/flags/sr.png | Bin 0 -> 513 bytes .../wb/internal/core/icons/nls/flags/st.png | Bin 0 -> 584 bytes .../wb/internal/core/icons/nls/flags/sv.png | Bin 0 -> 501 bytes .../wb/internal/core/icons/nls/flags/sy.png | Bin 0 -> 422 bytes .../wb/internal/core/icons/nls/flags/sz.png | Bin 0 -> 643 bytes .../wb/internal/core/icons/nls/flags/tc.png | Bin 0 -> 624 bytes .../wb/internal/core/icons/nls/flags/td.png | Bin 0 -> 570 bytes .../wb/internal/core/icons/nls/flags/tf.png | Bin 0 -> 527 bytes .../wb/internal/core/icons/nls/flags/tg.png | Bin 0 -> 562 bytes .../wb/internal/core/icons/nls/flags/th.png | Bin 0 -> 452 bytes .../wb/internal/core/icons/nls/flags/tj.png | Bin 0 -> 496 bytes .../wb/internal/core/icons/nls/flags/tk.png | Bin 0 -> 638 bytes .../wb/internal/core/icons/nls/flags/tl.png | Bin 0 -> 514 bytes .../wb/internal/core/icons/nls/flags/tm.png | Bin 0 -> 593 bytes .../wb/internal/core/icons/nls/flags/tn.png | Bin 0 -> 495 bytes .../wb/internal/core/icons/nls/flags/to.png | Bin 0 -> 426 bytes .../wb/internal/core/icons/nls/flags/tr.png | Bin 0 -> 492 bytes .../wb/internal/core/icons/nls/flags/tt.png | Bin 0 -> 617 bytes .../wb/internal/core/icons/nls/flags/tv.png | Bin 0 -> 536 bytes .../wb/internal/core/icons/nls/flags/tw.png | Bin 0 -> 465 bytes .../wb/internal/core/icons/nls/flags/tz.png | Bin 0 -> 642 bytes .../wb/internal/core/icons/nls/flags/ua.png | Bin 0 -> 446 bytes .../wb/internal/core/icons/nls/flags/ug.png | Bin 0 -> 531 bytes .../wb/internal/core/icons/nls/flags/um.png | Bin 0 -> 571 bytes .../wb/internal/core/icons/nls/flags/us.png | Bin 0 -> 609 bytes .../wb/internal/core/icons/nls/flags/uy.png | Bin 0 -> 532 bytes .../wb/internal/core/icons/nls/flags/uz.png | Bin 0 -> 515 bytes .../wb/internal/core/icons/nls/flags/va.png | Bin 0 -> 553 bytes .../wb/internal/core/icons/nls/flags/vc.png | Bin 0 -> 577 bytes .../wb/internal/core/icons/nls/flags/ve.png | Bin 0 -> 528 bytes .../wb/internal/core/icons/nls/flags/vg.png | Bin 0 -> 630 bytes .../wb/internal/core/icons/nls/flags/vi.png | Bin 0 -> 616 bytes .../wb/internal/core/icons/nls/flags/vn.png | Bin 0 -> 474 bytes .../wb/internal/core/icons/nls/flags/vu.png | Bin 0 -> 604 bytes .../wb/internal/core/icons/nls/flags/wales.png | Bin 0 -> 652 bytes .../wb/internal/core/icons/nls/flags/wf.png | Bin 0 -> 554 bytes .../wb/internal/core/icons/nls/flags/ws.png | Bin 0 -> 476 bytes .../wb/internal/core/icons/nls/flags/ye.png | Bin 0 -> 413 bytes .../wb/internal/core/icons/nls/flags/yt.png | Bin 0 -> 593 bytes .../wb/internal/core/icons/nls/flags/za.png | Bin 0 -> 642 bytes .../wb/internal/core/icons/nls/flags/zm.png | Bin 0 -> 500 bytes .../wb/internal/core/icons/nls/flags/zw.png | Bin 0 -> 574 bytes .../eclipse/wb/internal/core/icons/nls/globe3.png | Bin 0 -> 852 bytes .../eclipse/wb/internal/core/icons/nls/ms16.png | Bin 0 -> 713 bytes .../wb/internal/core/icons/nls/property.gif | Bin 0 -> 97 bytes .../wb/internal/core/nls/model/LocaleInfo.java | 190 ++++++ .../wb/internal/core/nls/model/LocalePartInfo.java | 81 +++ .../internal/core/nls/model/LocalePartInfos.java | 106 ++++ .../internal/core/nls/ui/FlagImagesRepository.java | 144 +++++ .../wb/internal/core/nls/ui/LocaleUtils.java | 61 ++ 264 files changed, 1278 insertions(+), 2 deletions(-) create mode 100644 propertysheet/src/org/eclipse/wb/core/controls/CTableCombo.java create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.gif create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings.gif create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings_disabled.gif create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/extstr_wiz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ad.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ae.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/af.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ag.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ai.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/al.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/am.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/an.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ao.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ar.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/as.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/at.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/au.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/aw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ax.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/az.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ba.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bb.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bd.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/be.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bh.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bi.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bj.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bo.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/br.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bs.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bv.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/by.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ca.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/catalonia.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cd.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ch.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ci.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ck.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cl.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/co.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cs.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cv.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cx.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cy.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/de.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dj.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/do.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ec.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ee.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eh.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/england.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/er.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/es.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/et.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/europeanunion.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fam.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fi.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fj.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/flag_empty.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fo.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ga.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gb.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gd.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ge.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gh.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gi.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gl.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gp.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gq.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gs.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gy.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ht.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/id.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ie.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/il.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/in.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/io.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/iq.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ir.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/is.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/it.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jo.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jp.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ke.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kh.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ki.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/km.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kp.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ky.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/la.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lb.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/li.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ls.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lv.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ly.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ma.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/md.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/me.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mh.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ml.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mo.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mp.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mq.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ms.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mv.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mx.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/my.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/na.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ne.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ng.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ni.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nl.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/no.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/np.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/om.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pa.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pe.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ph.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pl.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ps.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/py.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/qa.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/re.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ro.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rs.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ru.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sa.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sb.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/scotland.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sd.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/se.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sh.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/si.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sj.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sl.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/so.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/st.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sv.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sy.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/td.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/th.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tj.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tk.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tl.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/to.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tr.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tv.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ua.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ug.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/um.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/us.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uy.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uz.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/va.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vc.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ve.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vg.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vi.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vn.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vu.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wales.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wf.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ws.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ye.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/yt.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/za.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zm.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zw.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/globe3.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/ms16.png create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/icons/nls/property.gif create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocaleInfo.java create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfo.java create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfos.java create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/nls/ui/FlagImagesRepository.java create mode 100644 propertysheet/src/org/eclipse/wb/internal/core/nls/ui/LocaleUtils.java diff --git a/propertysheet/.gitignore b/propertysheet/.gitignore index fe99505..3826f65 100644 --- a/propertysheet/.gitignore +++ b/propertysheet/.gitignore @@ -1,2 +1,6 @@ bin - +*~ +*.bak +Thumbs.db +*.class +*.DS_Store diff --git a/propertysheet/src/org/eclipse/wb/core/controls/CTableCombo.java b/propertysheet/src/org/eclipse/wb/core/controls/CTableCombo.java new file mode 100644 index 0000000..407e14b --- /dev/null +++ b/propertysheet/src/org/eclipse/wb/core/controls/CTableCombo.java @@ -0,0 +1,690 @@ +/******************************************************************************* + * Copyright (c) 2011 Google, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Google, Inc. - initial API and implementation + *******************************************************************************/ +package org.eclipse.wb.core.controls; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.custom.CCombo; +import org.eclipse.swt.events.DisposeEvent; +import org.eclipse.swt.events.DisposeListener; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Image; +import org.eclipse.swt.graphics.Point; +import org.eclipse.swt.graphics.Rectangle; +import org.eclipse.swt.layout.FillLayout; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Combo; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Display; +import org.eclipse.swt.widgets.Event; +import org.eclipse.swt.widgets.Listener; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.swt.widgets.Table; +import org.eclipse.swt.widgets.TableColumn; +import org.eclipse.swt.widgets.TableItem; +import org.eclipse.swt.widgets.TypedListener; + +import java.util.Locale; + +/** + * {@link Control} like {@link Combo} or {@link CCombo} that shows {@link Table} with image/text as + * drop-down. + * + * @author mitin_aa + * @author scheglov_ke + * @coverage core.control + */ +public class CTableCombo extends Composite { + protected Button m_arrow; + protected CImageLabel m_text; + protected Shell m_popup; + protected Table m_table; + protected boolean hasFocus; + + // + public CTableCombo(Composite parent, int style) { + super(parent, style = checkStyle(style)); + init(parent, style); + } + + static int checkStyle(int style) { + int mask = SWT.BORDER | SWT.READ_ONLY | SWT.FLAT; + return style & mask; + } + + private void init(Composite parent, int style) { + m_arrow = new Button(this, SWT.ARROW | SWT.DOWN | SWT.NO_FOCUS); + m_text = new CImageLabel(this, style & ~SWT.BORDER); + m_text.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_LIST_BACKGROUND)); + final Shell shell = getShell(); + m_popup = new Shell(shell, SWT.NONE); + m_table = new Table(m_popup, SWT.FULL_SELECTION); + new TableColumn(m_table, SWT.NONE); + Listener listener = new Listener() { + public void handleEvent(Event event) { + if (m_popup == event.widget) { + handlePopupEvent(event); + return; + } + if (m_text == event.widget) { + handleTextEvent(event); + return; + } + if (m_table == event.widget) { + handleTableEvent(event); + return; + } + if (m_arrow == event.widget) { + handleArrowEvent(event); + return; + } + if (CTableCombo.this == event.widget) { + handleComboEvent(event); + return; + } + } + }; + final Listener shellListener = new Listener() { + public void handleEvent(Event event) { + switch (event.type) { + case SWT.Dispose : + case SWT.Move : + case SWT.Resize : + if (!isDisposed()) { + dropDown(false); + } + break; + } + } + }; + final int[] comboEvents = {SWT.Dispose, SWT.Move, SWT.Resize}; + for (int i = 0; i < comboEvents.length; i++) { + addListener(comboEvents[i], listener); + // HACK: hide popup when parent changed + shell.addListener(comboEvents[i], shellListener); + } + addDisposeListener(new DisposeListener() { + public void widgetDisposed(DisposeEvent e) { + for (int i = 0; i < comboEvents.length; i++) { + shell.removeListener(comboEvents[i], shellListener); + } + } + }); + int[] popupEvents = {SWT.Close, SWT.Paint, SWT.Deactivate}; + for (int i = 0; i < popupEvents.length; i++) { + m_popup.addListener(popupEvents[i], listener); + } + int[] textEvents = + { + SWT.KeyDown, + SWT.KeyUp, + SWT.Modify, + SWT.MouseDown, + SWT.MouseUp, + SWT.MouseDoubleClick, + SWT.Traverse, + SWT.FocusIn, + SWT.FocusOut}; + for (int i = 0; i < textEvents.length; i++) { + m_text.addListener(textEvents[i], listener); + } + int[] tableEvents = + { + SWT.MouseUp, + SWT.Selection, + SWT.Traverse, + SWT.KeyDown, + SWT.KeyUp, + SWT.FocusIn, + SWT.FocusOut}; + for (int i = 0; i < tableEvents.length; i++) { + m_table.addListener(tableEvents[i], listener); + } + int[] arrowEvents = {SWT.Selection, SWT.FocusIn, SWT.FocusOut}; + for (int i = 0; i < arrowEvents.length; i++) { + m_arrow.addListener(arrowEvents[i], listener); + } + } + + protected void handleTableEvent(Event event) { + switch (event.type) { + case SWT.FocusIn : { + if (hasFocus) { + return; + } + hasFocus = true; + Event e = new Event(); + e.time = event.time; + notifyListeners(SWT.FocusIn, e); + break; + } + case SWT.FocusOut : { + final int time = event.time; + event.display.asyncExec(new Runnable() { + public void run() { + if (CTableCombo.this.isDisposed()) { + return; + } + Control focusControl = getDisplay().getFocusControl(); + if (focusControl == m_text || focusControl == m_arrow) { + return; + } + hasFocus = false; + Event e = new Event(); + e.time = time; + notifyListeners(SWT.FocusOut, e); + } + }); + break; + } + case SWT.MouseUp : { + if (event.button != 1) { + return; + } + dropDown(false); + Event e = new Event(); + e.time = event.time; + notifyListeners(SWT.DefaultSelection, e); + break; + } + case SWT.Selection : { + int index = m_table.getSelectionIndex(); + if (index == -1) { + return; + } + TableItem item = m_table.getItem(index); + m_text.setText(item.getText()); + m_text.setImage(item.getImage()); + //m_text.selectAll(); + m_table.setSelection(index); + Event e = new Event(); + e.time = event.time; + e.stateMask = event.stateMask; + e.doit = event.doit; + notifyListeners(SWT.Selection, e); + event.doit = e.doit; + dropDown(false); + break; + } + case SWT.Traverse : { + switch (event.detail) { + case SWT.TRAVERSE_TAB_NEXT : + case SWT.TRAVERSE_RETURN : + case SWT.TRAVERSE_ESCAPE : + case SWT.TRAVERSE_ARROW_PREVIOUS : + case SWT.TRAVERSE_ARROW_NEXT : + event.doit = false; + break; + } + Event e = new Event(); + e.time = event.time; + e.detail = event.detail; + e.doit = event.doit; + e.keyCode = event.keyCode; + notifyListeners(SWT.Traverse, e); + event.doit = e.doit; + break; + } + case SWT.KeyUp : { + Event e = new Event(); + e.time = event.time; + e.character = event.character; + e.keyCode = event.keyCode; + e.stateMask = event.stateMask; + notifyListeners(SWT.KeyUp, e); + break; + } + case SWT.KeyDown : { + if (event.character == SWT.ESC) { + // escape key cancels popups + dropDown(false); + } + if (event.character == SWT.CR || event.character == '\t') { + // Enter and Tab cause default selection + dropDown(false); + Event e = new Event(); + e.time = event.time; + e.stateMask = event.stateMask; + notifyListeners(SWT.DefaultSelection, e); + } + // At this point the widget may have been disposed. + // If so, do not continue. + if (isDisposed()) { + break; + } + Event e = new Event(); + e.time = event.time; + e.character = event.character; + e.keyCode = event.keyCode; + e.stateMask = event.stateMask; + notifyListeners(SWT.KeyDown, e); + break; + } + } + } + + protected void handlePopupEvent(Event event) { + switch (event.type) { + case SWT.Paint : + // draw black rectangle around list + Rectangle listRect = m_table.getBounds(); + Color black = getDisplay().getSystemColor(SWT.COLOR_BLACK); + event.gc.setForeground(black); + event.gc.drawRectangle(0, 0, listRect.width + 1, listRect.height + 1); + break; + case SWT.Close : + event.doit = false; + dropDown(false); + break; + } + } + + protected void handleComboEvent(Event event) { + switch (event.type) { + case SWT.Dispose : + if (m_popup != null && !m_popup.isDisposed()) { + m_popup.dispose(); + } + m_popup = null; + m_text = null; + m_arrow = null; + break; + case SWT.Move : + dropDown(false); + break; + case SWT.Resize : + internalLayout(); + break; + } + } + + protected void handleArrowEvent(Event event) { + switch (event.type) { + case SWT.FocusIn : { + if (hasFocus) { + return; + } + hasFocus = true; + Event e = new Event(); + e.time = event.time; + notifyListeners(SWT.FocusIn, e); + break; + } + case SWT.Selection : { + boolean wasDropped = isDropped(); + dropDown(!wasDropped); + if (wasDropped) { + m_text.forceFocus(); + } + break; + } + } + } + + protected void handleTextEvent(Event event) { + switch (event.type) { + case SWT.FocusIn : { + if (hasFocus) { + return; + } + hasFocus = true; + //if (getEditable()) + Event e = new Event(); + e.time = event.time; + notifyListeners(SWT.FocusIn, e); + break; + } + case SWT.FocusOut : { + final int time = event.time; + event.display.asyncExec(new Runnable() { + public void run() { + if (CTableCombo.this.isDisposed()) { + return; + } + Control focusControl = getDisplay().getFocusControl(); + if (focusControl == m_table + || focusControl == m_arrow + || focusControl != null + && focusControl.getParent() == CTableCombo.this) { + return; + } + hasFocus = false; + Event e = new Event(); + e.time = time; + notifyListeners(SWT.FocusOut, e); + } + }); + break; + } + case SWT.KeyDown : { + if (event.character == SWT.ESC) { // escape key cancels popup + dropDown(false); + } + if (event.character == SWT.CR) { + dropDown(false); + Event e = new Event(); + e.time = event.time; + e.stateMask = event.stateMask; + notifyListeners(SWT.DefaultSelection, e); + } + // At this point the widget may have been disposed. + // If so, do not continue. + if (isDisposed()) { + break; + } + if (event.character == '+') { + dropDown(true); + } + if (isDropped()) { + if (event.keyCode == SWT.ARROW_UP || event.keyCode == SWT.ARROW_DOWN) { + int oldIndex = getSelectionIndex(); + if (event.keyCode == SWT.ARROW_UP) { + select(Math.max(oldIndex - 1, 0)); + } else { + select(Math.min(oldIndex + 1, getItemCount() - 1)); + } + if (oldIndex != getSelectionIndex()) { + Event e = new Event(); + e.time = event.time; + e.stateMask = event.stateMask; + notifyListeners(SWT.Selection, e); + } + // At this point the widget may have been disposed. + // If so, do not continue. + if (isDisposed()) { + break; + } + } + } + if (Character.isLetter(event.character)) { + int oldIndex = getSelectionIndex(); + int index = -1; + for (int i = 0; i < getItemCount(); i++) { + String item = getItem(i).toUpperCase(Locale.ENGLISH); + if (item.length() != 0 && item.charAt(0) == Character.toUpperCase(event.character)) { + index = i; + break; + } + } + if (index != -1) { + select(Math.max(index, 0)); + if (oldIndex != getSelectionIndex()) { + Event e = new Event(); + e.time = event.time; + e.stateMask = event.stateMask; + notifyListeners(SWT.Selection, e); + } + } + } + Event e = new Event(); + e.time = event.time; + e.character = event.character; + e.keyCode = event.keyCode; + e.stateMask = event.stateMask; + if (m_text != null && !m_text.isDisposed()) { + notifyListeners(SWT.KeyDown, e); + } + break; + } + case SWT.KeyUp : { + Event e = new Event(); + e.time = event.time; + e.character = event.character; + e.keyCode = event.keyCode; + e.stateMask = event.stateMask; + notifyListeners(SWT.KeyUp, e); + break; + } + case SWT.Modify : { + m_table.deselectAll(); + Event e = new Event(); + e.time = event.time; + notifyListeners(SWT.Modify, e); + break; + } + case SWT.MouseDown : { + if (event.button != 1) { + return; + } + m_text.forceFocus(); + boolean dropped = isDropped(); + dropDown(!dropped); + if (!dropped) { + m_text.forceFocus(); + } + break; + } + case SWT.MouseDoubleClick : { + notifyListeners(SWT.MouseDoubleClick, event); + break; + } + case SWT.Traverse : { + switch (event.detail) { + case SWT.TRAVERSE_RETURN : + case SWT.TRAVERSE_ARROW_PREVIOUS : + case SWT.TRAVERSE_ARROW_NEXT : + // The enter causes default selection and + // the arrow keys are used to manipulate the list contents so + // do not use them for traversal. + event.doit = false; + break; + case SWT.TRAVERSE_TAB_NEXT : + case SWT.TRAVERSE_TAB_PREVIOUS : + event.doit = true; + break; + } + Event e = new Event(); + e.time = event.time; + e.detail = event.detail; + e.doit = event.doit; + e.keyCode = event.keyCode; + notifyListeners(SWT.Traverse, e); + event.doit = e.doit; + break; + } + } + } + + private void dropDown(boolean drop) { + if (drop == isDropped()) { + return; + } + if (!drop) { + m_popup.setVisible(false); + m_text.setFocus(); + return; + } + int index = m_table.getSelectionIndex(); + if (index != -1) { + m_table.setTopIndex(index); + m_table.setSelection(index); + } + m_table.pack(); + Point point = getParent().toDisplay(getLocation()); + Point comboSize = getSize(); + //Rectangle tableRect = m_table.getBounds(); + //int width = Math.max(comboSize.x, tableRect.width + 2); + int width = comboSize.x - 1; + // only one column + m_table.getColumn(0).setWidth(width - 5); + if (!(m_popup.getLayout() instanceof FillLayout)) { + m_popup.setLayout(new FillLayout()); + } + int itemCount = m_table.getItemCount(); + if (itemCount > 20) { + itemCount = 20; + } + int height = + Math.min( + m_table.getItemHeight() * itemCount + 5, + Display.getCurrent().getClientArea().height - point.y - 20); + m_popup.setBounds(point.x, point.y + comboSize.y, width, height); + m_popup.layout(); + m_popup.setVisible(true); + m_text.setFocus(); + if (index != -1) { + m_table.setTopIndex(index); + m_table.setSelection(index); + } + } + + @Override + public Point computeSize(int wHint, int hHint, boolean changed) { + checkWidget(); + int width = 0, height = 0; + Point textSize = m_text.computeSize(wHint, SWT.DEFAULT, changed); + Point arrowSize = m_arrow.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed); + int tableWidth; + { + TableColumn column = m_table.getColumn(0); + column.pack(); + tableWidth = column.getWidth(); + } + // + int borderWidth = getBorderWidth(); + height = Math.max(hHint, Math.max(textSize.y, arrowSize.y) + 2 * borderWidth); + width = Math.max(wHint, Math.max(textSize.x + arrowSize.x, tableWidth) + 2 * borderWidth); + // + return new Point(width, height); + } + + private void internalLayout() { + if (isDropped()) { + dropDown(false); + } + Rectangle rect = getClientArea(); + int width = rect.width; + int height = rect.height; + Point arrowSize = m_arrow.computeSize(SWT.DEFAULT, height); + m_text.setBounds(rect.x, rect.y, width - arrowSize.x, height); + m_arrow.setBounds(rect.x + width - arrowSize.x, rect.y, arrowSize.x, arrowSize.y); + } + + private boolean isDropped() { + return m_popup.isVisible(); + } + + @Override + public boolean isFocusControl() { + checkWidget(); + if (m_text.isFocusControl() + || m_arrow.isFocusControl() + || m_table.isFocusControl() + || m_popup.isFocusControl()) { + return true; + } + return super.isFocusControl(); + } + + public void select(int index) { + checkWidget(); + if (index == -1) { + m_table.deselectAll(); + m_text.setText(""); //$NON-NLS-1$ + m_text.setImage(null); + return; + } + if (0 <= index && index < m_table.getItemCount()) { + if (index != getSelectionIndex()) { + TableItem item = m_table.getItem(index); + m_text.setText(item.getText()); + m_text.setImage(item.getImage()); + m_table.select(index); + m_table.showSelection(); + } + } + } + + @Override + public void setEnabled(boolean enabled) { + super.setEnabled(enabled); + if (enabled) { + m_text.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_LIST_BACKGROUND)); + } else { + m_text.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW)); + } + } + + public String getItem(int index) { + checkWidget(); + return m_table.getItem(index).getText(); + } + + public int getSelectionIndex() { + checkWidget(); + return m_table.getSelectionIndex(); + } + + public void removeAll() { + checkWidget(); + m_text.setText(""); //$NON-NLS-1$ + m_text.setImage(null); + m_table.removeAll(); + } + + public int indexOf(String string) { + return indexOf(string, 0); + } + + public int indexOf(String string, int start) { + checkWidget(); + if (string == null) { + return -1; + } + TableItem[] items = m_table.getItems(); + for (int i = start; i < items.length; i++) { + TableItem item = items[i]; + if (item.getText().equalsIgnoreCase(string)) { + return i; + } + } + return -1; + } + + public String getText() { + return m_text.getText(); + } + + public int getItemCount() { + checkWidget(); + return m_table.getItemCount(); + } + + protected void setText(String string) { + m_text.setText(string); + } + + protected void setImage(Image image) { + m_text.setImage(image); + } + + public void add(String text) { + add(text, null); + } + + public void add(String text, Image image) { + checkWidget(); + TableItem item = new TableItem(m_table, SWT.NONE); + item.setText(text); + item.setImage(image); + } + + public void addSelectionListener(SelectionListener listener) { + checkWidget(); + if (listener == null) { + SWT.error(SWT.ERROR_NULL_ARGUMENT); + } + TypedListener typedListener = new TypedListener(listener); + addListener(SWT.Selection, typedListener); + addListener(SWT.DefaultSelection, typedListener); + } +} diff --git a/propertysheet/src/org/eclipse/wb/internal/core/DesignerPlugin.java b/propertysheet/src/org/eclipse/wb/internal/core/DesignerPlugin.java index 564a068..9c6a6ca 100644 --- a/propertysheet/src/org/eclipse/wb/internal/core/DesignerPlugin.java +++ b/propertysheet/src/org/eclipse/wb/internal/core/DesignerPlugin.java @@ -208,7 +208,7 @@ public class DesignerPlugin { if (image == null) { ImageDescriptor descriptor = getImageDescriptor(path); if (descriptor != null) { - return descriptor.createImage(); + image = descriptor.createImage(); } sImageCache.put(path, image); } diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.gif b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.gif new file mode 100644 index 0000000..10dd73e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.gif differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.png new file mode 100644 index 0000000..34abffb Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/add_source.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings.gif b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings.gif new file mode 100644 index 0000000..ee1d84b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings.gif differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings_disabled.gif b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings_disabled.gif new file mode 100644 index 0000000..85eb7b1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/externalize_strings_disabled.gif differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/extstr_wiz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/extstr_wiz.png new file mode 100644 index 0000000..74ff245 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/extstr_wiz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ad.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ad.png new file mode 100644 index 0000000..625ca84 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ad.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ae.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ae.png new file mode 100644 index 0000000..ef3a1ec Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ae.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/af.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/af.png new file mode 100644 index 0000000..a4742e2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/af.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ag.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ag.png new file mode 100644 index 0000000..556d550 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ag.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ai.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ai.png new file mode 100644 index 0000000..74ed29d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ai.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/al.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/al.png new file mode 100644 index 0000000..92354cb Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/al.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/am.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/am.png new file mode 100644 index 0000000..344a2a8 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/am.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/an.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/an.png new file mode 100644 index 0000000..633e4b8 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/an.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ao.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ao.png new file mode 100644 index 0000000..bcbd1d6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ao.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ar.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ar.png new file mode 100644 index 0000000..e5ef8f1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ar.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/as.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/as.png new file mode 100644 index 0000000..32f30e4 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/as.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/at.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/at.png new file mode 100644 index 0000000..0f15f34 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/at.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/au.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/au.png new file mode 100644 index 0000000..a01389a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/au.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/aw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/aw.png new file mode 100644 index 0000000..a3579c2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/aw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ax.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ax.png new file mode 100644 index 0000000..1eea80a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ax.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/az.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/az.png new file mode 100644 index 0000000..4ee9fe5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/az.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ba.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ba.png new file mode 100644 index 0000000..c774992 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ba.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bb.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bb.png new file mode 100644 index 0000000..0df19c7 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bb.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bd.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bd.png new file mode 100644 index 0000000..076a8bf Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bd.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/be.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/be.png new file mode 100644 index 0000000..d86ebc8 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/be.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bf.png new file mode 100644 index 0000000..ab5ce8f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bg.png new file mode 100644 index 0000000..0469f06 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bh.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bh.png new file mode 100644 index 0000000..ea8ce68 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bh.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bi.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bi.png new file mode 100644 index 0000000..5cc2e30 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bi.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bj.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bj.png new file mode 100644 index 0000000..1cc8b45 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bj.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bm.png new file mode 100644 index 0000000..c0c7aea Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bn.png new file mode 100644 index 0000000..8fb0984 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bo.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bo.png new file mode 100644 index 0000000..ce7ba52 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bo.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/br.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/br.png new file mode 100644 index 0000000..9b1a553 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/br.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bs.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bs.png new file mode 100644 index 0000000..639fa6c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bs.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bt.png new file mode 100644 index 0000000..1d512df Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bv.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bv.png new file mode 100644 index 0000000..160b6b5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bv.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bw.png new file mode 100644 index 0000000..fcb1039 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/by.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/by.png new file mode 100644 index 0000000..504774e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/by.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bz.png new file mode 100644 index 0000000..be63ee1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/bz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ca.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ca.png new file mode 100644 index 0000000..1f20419 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ca.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/catalonia.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/catalonia.png new file mode 100644 index 0000000..5041e30 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/catalonia.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cc.png new file mode 100644 index 0000000..aed3d3b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cd.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cd.png new file mode 100644 index 0000000..5e48942 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cd.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cf.png new file mode 100644 index 0000000..da687bd Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cg.png new file mode 100644 index 0000000..a859792 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ch.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ch.png new file mode 100644 index 0000000..242ec01 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ch.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ci.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ci.png new file mode 100644 index 0000000..3f2c62e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ci.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ck.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ck.png new file mode 100644 index 0000000..746d3d6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ck.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cl.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cl.png new file mode 100644 index 0000000..29c6d61 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cl.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cm.png new file mode 100644 index 0000000..f65c5bd Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cn.png new file mode 100644 index 0000000..8914414 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/co.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/co.png new file mode 100644 index 0000000..a118ff4 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/co.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cr.png new file mode 100644 index 0000000..c7a3731 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cs.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cs.png new file mode 100644 index 0000000..8254790 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cs.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cu.png new file mode 100644 index 0000000..083f1d6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cv.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cv.png new file mode 100644 index 0000000..a63f7ea Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cv.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cx.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cx.png new file mode 100644 index 0000000..48e31ad Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cx.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cy.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cy.png new file mode 100644 index 0000000..5b1ad6c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cy.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cz.png new file mode 100644 index 0000000..c8403dd Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/cz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/de.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/de.png new file mode 100644 index 0000000..ac4a977 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/de.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dj.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dj.png new file mode 100644 index 0000000..582af36 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dj.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dk.png new file mode 100644 index 0000000..e2993d3 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dm.png new file mode 100644 index 0000000..5fbffcb Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/do.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/do.png new file mode 100644 index 0000000..5a04932 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/do.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dz.png new file mode 100644 index 0000000..335c239 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/dz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ec.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ec.png new file mode 100644 index 0000000..0caa0b1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ec.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ee.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ee.png new file mode 100644 index 0000000..0c82efb Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ee.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eg.png new file mode 100644 index 0000000..8a3f7a1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eh.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eh.png new file mode 100644 index 0000000..90a1195 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/eh.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/england.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/england.png new file mode 100644 index 0000000..3a7311d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/england.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/er.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/er.png new file mode 100644 index 0000000..13065ae Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/er.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/es.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/es.png new file mode 100644 index 0000000..c2de2d7 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/es.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/et.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/et.png new file mode 100644 index 0000000..2e893fa Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/et.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/europeanunion.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/europeanunion.png new file mode 100644 index 0000000..d6d8711 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/europeanunion.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fam.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fam.png new file mode 100644 index 0000000..cf50c75 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fam.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fi.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fi.png new file mode 100644 index 0000000..14ec091 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fi.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fj.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fj.png new file mode 100644 index 0000000..cee9988 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fj.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fk.png new file mode 100644 index 0000000..ceaeb27 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/flag_empty.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/flag_empty.png new file mode 100644 index 0000000..5c00ce1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/flag_empty.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fm.png new file mode 100644 index 0000000..066bb24 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fo.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fo.png new file mode 100644 index 0000000..cbceb80 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fo.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fr.png new file mode 100644 index 0000000..8332c4e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/fr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ga.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ga.png new file mode 100644 index 0000000..0e0d434 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ga.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gb.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gb.png new file mode 100644 index 0000000..ff701e1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gb.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gd.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gd.png new file mode 100644 index 0000000..9ab57f5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gd.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ge.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ge.png new file mode 100644 index 0000000..728d970 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ge.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gf.png new file mode 100644 index 0000000..8332c4e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gh.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gh.png new file mode 100644 index 0000000..4e2f896 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gh.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gi.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gi.png new file mode 100644 index 0000000..e76797f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gi.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gl.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gl.png new file mode 100644 index 0000000..ef12a73 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gl.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gm.png new file mode 100644 index 0000000..0720b66 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gn.png new file mode 100644 index 0000000..ea660b0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gp.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gp.png new file mode 100644 index 0000000..dbb086d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gp.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gq.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gq.png new file mode 100644 index 0000000..ebe20a2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gq.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gr.png new file mode 100644 index 0000000..8651ade Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gs.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gs.png new file mode 100644 index 0000000..7ef0bf5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gs.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gt.png new file mode 100644 index 0000000..c43a70d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gu.png new file mode 100644 index 0000000..92f37c0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gw.png new file mode 100644 index 0000000..b37bcf0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gy.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gy.png new file mode 100644 index 0000000..22cbe2f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/gy.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hk.png new file mode 100644 index 0000000..d5c380c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hm.png new file mode 100644 index 0000000..a01389a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hn.png new file mode 100644 index 0000000..96f8388 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hr.png new file mode 100644 index 0000000..696b515 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ht.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ht.png new file mode 100644 index 0000000..416052a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ht.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hu.png new file mode 100644 index 0000000..7baafe4 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/hu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/id.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/id.png new file mode 100644 index 0000000..c6bc0fa Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/id.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ie.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ie.png new file mode 100644 index 0000000..26baa31 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ie.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/il.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/il.png new file mode 100644 index 0000000..2ca772d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/il.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/in.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/in.png new file mode 100644 index 0000000..e4d7e81 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/in.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/io.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/io.png new file mode 100644 index 0000000..3e74b6a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/io.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/iq.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/iq.png new file mode 100644 index 0000000..878a351 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/iq.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ir.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ir.png new file mode 100644 index 0000000..c5fd136 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ir.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/is.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/is.png new file mode 100644 index 0000000..b8f6d0f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/is.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/it.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/it.png new file mode 100644 index 0000000..89692f7 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/it.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jm.png new file mode 100644 index 0000000..7be119e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jo.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jo.png new file mode 100644 index 0000000..11bd497 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jo.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jp.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jp.png new file mode 100644 index 0000000..325fbad Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/jp.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ke.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ke.png new file mode 100644 index 0000000..51879ad Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ke.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kg.png new file mode 100644 index 0000000..0a818f6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kh.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kh.png new file mode 100644 index 0000000..30f6bb1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kh.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ki.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ki.png new file mode 100644 index 0000000..2dcce4b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ki.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/km.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/km.png new file mode 100644 index 0000000..812b2f5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/km.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kn.png new file mode 100644 index 0000000..febd5b4 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kp.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kp.png new file mode 100644 index 0000000..d3d509a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kp.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kr.png new file mode 100644 index 0000000..9c0a78e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kw.png new file mode 100644 index 0000000..96546da Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ky.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ky.png new file mode 100644 index 0000000..15c5f8e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ky.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kz.png new file mode 100644 index 0000000..45a8c88 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/kz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/la.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/la.png new file mode 100644 index 0000000..e28acd0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/la.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lb.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lb.png new file mode 100644 index 0000000..d0d452b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lb.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lc.png new file mode 100644 index 0000000..a47d065 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/li.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/li.png new file mode 100644 index 0000000..6469909 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/li.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lk.png new file mode 100644 index 0000000..088aad6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lr.png new file mode 100644 index 0000000..89a5bc7 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ls.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ls.png new file mode 100644 index 0000000..33fdef1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ls.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lt.png new file mode 100644 index 0000000..c8ef0da Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lu.png new file mode 100644 index 0000000..4cabba9 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lv.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lv.png new file mode 100644 index 0000000..49b6998 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/lv.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ly.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ly.png new file mode 100644 index 0000000..b163a9f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ly.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ma.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ma.png new file mode 100644 index 0000000..f386770 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ma.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mc.png new file mode 100644 index 0000000..1aa830f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/md.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/md.png new file mode 100644 index 0000000..4e92c18 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/md.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/me.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/me.png new file mode 100644 index 0000000..ac72535 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/me.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mg.png new file mode 100644 index 0000000..d2715b3 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mh.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mh.png new file mode 100644 index 0000000..fb523a8 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mh.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mk.png new file mode 100644 index 0000000..db173aa Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ml.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ml.png new file mode 100644 index 0000000..2cec8ba Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ml.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mm.png new file mode 100644 index 0000000..f464f67 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mn.png new file mode 100644 index 0000000..9396355 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mo.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mo.png new file mode 100644 index 0000000..deb801d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mo.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mp.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mp.png new file mode 100644 index 0000000..298d588 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mp.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mq.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mq.png new file mode 100644 index 0000000..010143b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mq.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mr.png new file mode 100644 index 0000000..319546b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ms.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ms.png new file mode 100644 index 0000000..d4cbb43 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ms.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mt.png new file mode 100644 index 0000000..00af948 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mu.png new file mode 100644 index 0000000..b7fdce1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mv.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mv.png new file mode 100644 index 0000000..5073d9e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mv.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mw.png new file mode 100644 index 0000000..13886e9 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mx.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mx.png new file mode 100644 index 0000000..5bc58ab Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mx.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/my.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/my.png new file mode 100644 index 0000000..9034cba Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/my.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mz.png new file mode 100644 index 0000000..76405e0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/mz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/na.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/na.png new file mode 100644 index 0000000..63358c6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/na.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nc.png new file mode 100644 index 0000000..2cad283 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ne.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ne.png new file mode 100644 index 0000000..d85f424 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ne.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nf.png new file mode 100644 index 0000000..f9bcdda Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ng.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ng.png new file mode 100644 index 0000000..3eea2e0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ng.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ni.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ni.png new file mode 100644 index 0000000..3969aaa Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ni.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nl.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nl.png new file mode 100644 index 0000000..fe44791 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nl.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/no.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/no.png new file mode 100644 index 0000000..160b6b5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/no.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/np.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/np.png new file mode 100644 index 0000000..aeb058b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/np.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nr.png new file mode 100644 index 0000000..705fc33 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nu.png new file mode 100644 index 0000000..c3ce4ae Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nz.png new file mode 100644 index 0000000..10d6306 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/nz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/om.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/om.png new file mode 100644 index 0000000..2ffba7e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/om.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pa.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pa.png new file mode 100644 index 0000000..9b2ee9a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pa.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pe.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pe.png new file mode 100644 index 0000000..62a0497 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pe.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pf.png new file mode 100644 index 0000000..771a0f6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pg.png new file mode 100644 index 0000000..10d6233 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ph.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ph.png new file mode 100644 index 0000000..b89e159 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ph.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pk.png new file mode 100644 index 0000000..e9df70c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pl.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pl.png new file mode 100644 index 0000000..d413d01 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pl.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pm.png new file mode 100644 index 0000000..ba91d2c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pn.png new file mode 100644 index 0000000..aa9344f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pr.png new file mode 100644 index 0000000..82d9130 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ps.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ps.png new file mode 100644 index 0000000..f5f5477 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ps.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pt.png new file mode 100644 index 0000000..ece7980 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pw.png new file mode 100644 index 0000000..6178b25 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/pw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/py.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/py.png new file mode 100644 index 0000000..cb8723c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/py.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/qa.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/qa.png new file mode 100644 index 0000000..ed4c621 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/qa.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/re.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/re.png new file mode 100644 index 0000000..8332c4e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/re.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ro.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ro.png new file mode 100644 index 0000000..57e74a6 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ro.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rs.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rs.png new file mode 100644 index 0000000..9439a5b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rs.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ru.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ru.png new file mode 100644 index 0000000..47da421 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ru.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rw.png new file mode 100644 index 0000000..5356491 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/rw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sa.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sa.png new file mode 100644 index 0000000..b4641c7 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sa.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sb.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sb.png new file mode 100644 index 0000000..a9937cc Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sb.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sc.png new file mode 100644 index 0000000..39ee371 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/scotland.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/scotland.png new file mode 100644 index 0000000..a0e57b4 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/scotland.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sd.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sd.png new file mode 100644 index 0000000..eaab69e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sd.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/se.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/se.png new file mode 100644 index 0000000..1994653 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/se.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sg.png new file mode 100644 index 0000000..dd34d61 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sh.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sh.png new file mode 100644 index 0000000..4b1d2a2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sh.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/si.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/si.png new file mode 100644 index 0000000..bb1476f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/si.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sj.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sj.png new file mode 100644 index 0000000..160b6b5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sj.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sk.png new file mode 100644 index 0000000..7ccbc82 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sl.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sl.png new file mode 100644 index 0000000..12d812d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sl.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sm.png new file mode 100644 index 0000000..3df2fdc Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sn.png new file mode 100644 index 0000000..eabb71d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/so.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/so.png new file mode 100644 index 0000000..4a1ea4b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/so.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sr.png new file mode 100644 index 0000000..5eff927 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/st.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/st.png new file mode 100644 index 0000000..2978557 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/st.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sv.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sv.png new file mode 100644 index 0000000..2498799 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sv.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sy.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sy.png new file mode 100644 index 0000000..f5ce30d Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sy.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sz.png new file mode 100644 index 0000000..914ee86 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/sz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tc.png new file mode 100644 index 0000000..8fc1156 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/td.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/td.png new file mode 100644 index 0000000..667f21f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/td.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tf.png new file mode 100644 index 0000000..80529a4 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tg.png new file mode 100644 index 0000000..3aa00ad Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/th.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/th.png new file mode 100644 index 0000000..dd8ba91 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/th.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tj.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tj.png new file mode 100644 index 0000000..617bf64 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tj.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tk.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tk.png new file mode 100644 index 0000000..67b8c8c Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tk.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tl.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tl.png new file mode 100644 index 0000000..77da181 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tl.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tm.png new file mode 100644 index 0000000..828020e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tn.png new file mode 100644 index 0000000..183cdd3 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/to.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/to.png new file mode 100644 index 0000000..f89b8ba Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/to.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tr.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tr.png new file mode 100644 index 0000000..be32f77 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tr.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tt.png new file mode 100644 index 0000000..2a11c1e Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tv.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tv.png new file mode 100644 index 0000000..28274c5 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tv.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tw.png new file mode 100644 index 0000000..f31c654 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tz.png new file mode 100644 index 0000000..c00ff79 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/tz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ua.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ua.png new file mode 100644 index 0000000..09563a2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ua.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ug.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ug.png new file mode 100644 index 0000000..33f4aff Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ug.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/um.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/um.png new file mode 100644 index 0000000..c1dd965 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/um.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/us.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/us.png new file mode 100644 index 0000000..10f451f Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/us.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uy.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uy.png new file mode 100644 index 0000000..31d948a Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uy.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uz.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uz.png new file mode 100644 index 0000000..fef5dc1 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/uz.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/va.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/va.png new file mode 100644 index 0000000..b31eaf2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/va.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vc.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vc.png new file mode 100644 index 0000000..8fa17b0 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vc.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ve.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ve.png new file mode 100644 index 0000000..00c90f9 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ve.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vg.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vg.png new file mode 100644 index 0000000..4156907 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vg.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vi.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vi.png new file mode 100644 index 0000000..ed26915 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vi.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vn.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vn.png new file mode 100644 index 0000000..ec7cd48 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vn.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vu.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vu.png new file mode 100644 index 0000000..b3397bc Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/vu.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wales.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wales.png new file mode 100644 index 0000000..e0d7cee Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wales.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wf.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wf.png new file mode 100644 index 0000000..9f95587 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/wf.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ws.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ws.png new file mode 100644 index 0000000..c169508 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ws.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ye.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ye.png new file mode 100644 index 0000000..468dfad Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/ye.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/yt.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/yt.png new file mode 100644 index 0000000..c298f37 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/yt.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/za.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/za.png new file mode 100644 index 0000000..57c58e2 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/za.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zm.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zm.png new file mode 100644 index 0000000..c25b07b Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zm.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zw.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zw.png new file mode 100644 index 0000000..53c9725 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/flags/zw.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/globe3.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/globe3.png new file mode 100644 index 0000000..9991031 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/globe3.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/ms16.png b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/ms16.png new file mode 100644 index 0000000..fd46156 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/ms16.png differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/property.gif b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/property.gif new file mode 100644 index 0000000..b512915 Binary files /dev/null and b/propertysheet/src/org/eclipse/wb/internal/core/icons/nls/property.gif differ diff --git a/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocaleInfo.java b/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocaleInfo.java new file mode 100644 index 0000000..0403351 --- /dev/null +++ b/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocaleInfo.java @@ -0,0 +1,190 @@ +/******************************************************************************* + * Copyright (c) 2011 Google, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Google, Inc. - initial API and implementation + *******************************************************************************/ +package org.eclipse.wb.internal.core.nls.model; + +import java.util.Locale; + +/** + * Information about {@link Locale}. + * + * We separate {@link LocaleInfo} from {@link BundleInfo} because {@link BundleInfo} is wrapper for + * single *.properties file and we support more than one source of bundles in one + * {@link CompilationUnit}. + * + * @author scheglov_ke + * @coverage core.nls + */ +public final class LocaleInfo implements Comparable { + /** + * The default {@link LocaleInfo}. + */ + public static final LocaleInfo DEFAULT = new LocaleInfo(null); + //////////////////////////////////////////////////////////////////////////// + // + // Instance fields + // + //////////////////////////////////////////////////////////////////////////// + private final Locale m_locale; + + //////////////////////////////////////////////////////////////////////////// + // + // Constructor + // + //////////////////////////////////////////////////////////////////////////// + public LocaleInfo(Locale locale) { + m_locale = locale; + } + + //////////////////////////////////////////////////////////////////////////// + // + // Object + // + //////////////////////////////////////////////////////////////////////////// + @Override + public String toString() { + return getTitle(); + } + + @Override + public boolean equals(Object obj) { + if (obj == this) { + return true; + } + if (obj instanceof LocaleInfo) { + LocaleInfo localeInfo = (LocaleInfo) obj; + if (isDefault()) { + return localeInfo.isDefault(); + } + return m_locale.equals(localeInfo.m_locale); + } + return false; + } + + @Override + public int hashCode() { + if (isDefault()) { + return 0; + } + return m_locale.hashCode(); + } + + //////////////////////////////////////////////////////////////////////////// + // + // Comparable + // + //////////////////////////////////////////////////////////////////////////// + @Override +public int compareTo(LocaleInfo o) { + if (m_locale == null) { + if (o.m_locale == null) { + return 0; + } + return -1; + } + if (o.m_locale == null) { + return 1; + } + String localeNameA = m_locale.toString(); + String localeNameB = o.m_locale.toString(); + return localeNameA.compareTo(localeNameB); + } + + //////////////////////////////////////////////////////////////////////////// + // + // Access + // + //////////////////////////////////////////////////////////////////////////// + /** + * @return {@link Locale} for this {@link LocaleInfo}. + */ + public Locale getLocale() { + return m_locale; + } + + /** + * @return true if that {@link Locale} is default. + */ + public boolean isDefault() { + return m_locale == null; + } + + /** + * @return the title to display in UI. + */ + public String getTitle() { + if (isDefault()) { + return "(default)"; + } + return m_locale.toString(); + } + + //////////////////////////////////////////////////////////////////////////// + // + // Utils + // + //////////////////////////////////////////////////////////////////////////// + /** + * @return the "parent" {@link LocaleInfo} from given array.
+ * Here "parent" is locale that is more general than current one.
+ * For example "parent" locale for 'ru_RU' is 'ru'. + * + * If there are no parent locale in array, return default locale.
+ */ + public LocaleInfo getParent(LocaleInfo locales[]) { + String localeName = m_locale.toString(); + int lastSeparatorIndex = localeName.lastIndexOf('_'); + if (lastSeparatorIndex != -1) { + String parentLocaleName = localeName.substring(0, lastSeparatorIndex); + // try to find locale with parent name + for (LocaleInfo locale : locales) { + if (locale.getLocale() != null && locale.getLocale().toString().equals(parentLocaleName)) { + return locale; + } + } + } + // use default + return LocaleInfo.DEFAULT; + } + + /** + * @param localeName + * the name of locale, such as "en" or "ru_RU". + * @param localeDescription + * the description of {@link Locale}, used in exception. + * @return the {@link LocaleInfo} which wraps {@link Locale}. + */ + public static LocaleInfo create(String localeName, String localeDescription) { + // try to find locale in list of available locales + Locale[] locales = Locale.getAvailableLocales(); + for (int i = 0; i < locales.length; i++) { + Locale locale = locales[i]; + if (locale.toString().equals(localeName)) { + return new LocaleInfo(locale); + } + } + // try to create new, this constructor is since 1.4, so do this in try/catch + try { + Locale locale; + int separatorIndex = localeName.indexOf('_'); + if (separatorIndex != -1) { + String language = localeName.substring(0, separatorIndex); + String country = localeName.substring(separatorIndex + 1); + locale = new Locale(language, country); + } else { + locale = new Locale(localeName); + } + return new LocaleInfo(locale); + } catch (Throwable e) { + String msg = "Locale not found for " + localeDescription; + throw new IllegalArgumentException(msg); + } + } +} diff --git a/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfo.java b/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfo.java new file mode 100644 index 0000000..9278979 --- /dev/null +++ b/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfo.java @@ -0,0 +1,81 @@ +/******************************************************************************* + * Copyright (c) 2011 Google, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Google, Inc. - initial API and implementation + *******************************************************************************/ +package org.eclipse.wb.internal.core.nls.model; + +import org.eclipse.swt.graphics.Image; + +/** + * Information about part of Locale - language or country. + * + * @author scheglov_ke + * @coverage core.nls + */ +public final class LocalePartInfo implements Comparable { + private final String m_name; + private final String m_displayName; + private final Image m_flagImage; + + //////////////////////////////////////////////////////////////////////////// + // + // Constructor + // + //////////////////////////////////////////////////////////////////////////// + public LocalePartInfo(String name, String displayName, Image flagImage) { + m_name = name; + m_displayName = displayName; + m_flagImage = flagImage; + } + + //////////////////////////////////////////////////////////////////////////// + // + // Access + // + //////////////////////////////////////////////////////////////////////////// + public String getName() { + return m_name; + } + + public Image getFlagImage() { + return m_flagImage; + } + + //////////////////////////////////////////////////////////////////////////// + // + // Object + // + //////////////////////////////////////////////////////////////////////////// + @Override + public String toString() { + if (m_name.length() == 0) { + return m_displayName; + } + return m_name + " - " + m_displayName; + } + + @Override + public int hashCode() { + return m_name.hashCode(); + } + + @Override + public boolean equals(Object obj) { + return obj instanceof LocalePartInfo && m_name.equals(((LocalePartInfo) obj).m_name); + } + + //////////////////////////////////////////////////////////////////////////// + // + // Comparable + // + //////////////////////////////////////////////////////////////////////////// + public int compareTo(LocalePartInfo o) { + return m_name.compareTo(o.m_name); + } +} \ No newline at end of file diff --git a/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfos.java b/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfos.java new file mode 100644 index 0000000..68f9097 --- /dev/null +++ b/propertysheet/src/org/eclipse/wb/internal/core/nls/model/LocalePartInfos.java @@ -0,0 +1,106 @@ +/******************************************************************************* + * Copyright (c) 2011 Google, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Google, Inc. - initial API and implementation + *******************************************************************************/ +package org.eclipse.wb.internal.core.nls.model; + +import com.google.common.collect.Sets; + +import org.eclipse.wb.internal.core.nls.ui.FlagImagesRepository; + +import org.eclipse.swt.graphics.Image; + +import java.util.Arrays; +import java.util.Locale; +import java.util.Set; + +/** + * Utilities for {@link LocaleInfo}. + * + * @author scheglov_ke + * @coverage core.nls + */ +public final class LocalePartInfos { + private static LocalePartInfo m_languages[]; + private static LocalePartInfo m_countries[]; + + //////////////////////////////////////////////////////////////////////////// + // + // Access + // + //////////////////////////////////////////////////////////////////////////// + public static LocalePartInfo[] getLanguages() { + initLanguagesAndCountries(); + return m_languages; + } + + public static LocalePartInfo[] getCountries() { + initLanguagesAndCountries(); + return m_countries; + } + + //////////////////////////////////////////////////////////////////////////// + // + // Find items + // + //////////////////////////////////////////////////////////////////////////// + public static int indexByName(LocalePartInfo[] parts, String name) { + for (int i = 0; i < parts.length; i++) { + LocalePartInfo part = parts[i]; + if (part.getName().equals(name)) { + return i; + } + } + return -1; + } + + //////////////////////////////////////////////////////////////////////////// + // + // Initialization + // + //////////////////////////////////////////////////////////////////////////// + /** + * Prepare arrays of all available languages and countries with titles and flags. + */ + private static void initLanguagesAndCountries() { + if (m_languages == null) { + // languages + { + Set languagesSet = Sets.newHashSet(); + // fill + for (String language : Locale.getISOLanguages()) { + Locale locale = new Locale(language); + Image flagImage = FlagImagesRepository.getFlagImage(locale); + languagesSet.add(new LocalePartInfo(locale.getLanguage(), + locale.getDisplayLanguage(), + flagImage)); + } + // remember as array + m_languages = languagesSet.toArray(new LocalePartInfo[languagesSet.size()]); + Arrays.sort(m_languages); + } + // countries + { + Set countriesSet = Sets.newHashSet(); + countriesSet.add(new LocalePartInfo("", "(none)", FlagImagesRepository.getEmptyFlagImage())); + // fill + for (String country : Locale.getISOCountries()) { + Locale locale = new Locale("", country); + Image flagImage = FlagImagesRepository.getFlagImage(locale); + countriesSet.add(new LocalePartInfo(locale.getCountry(), + locale.getDisplayCountry(), + flagImage)); + } + // remember as array + m_countries = countriesSet.toArray(new LocalePartInfo[countriesSet.size()]); + Arrays.sort(m_countries); + } + } + } +} diff --git a/propertysheet/src/org/eclipse/wb/internal/core/nls/ui/FlagImagesRepository.java b/propertysheet/src/org/eclipse/wb/internal/core/nls/ui/FlagImagesRepository.java new file mode 100644 index 0000000..854ba17 --- /dev/null +++ b/propertysheet/src/org/eclipse/wb/internal/core/nls/ui/FlagImagesRepository.java @@ -0,0 +1,144 @@ +/******************************************************************************* + * Copyright (c) 2011 Google, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Google, Inc. - initial API and implementation + *******************************************************************************/ +package org.eclipse.wb.internal.core.nls.ui; + +import com.google.common.base.Strings; +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; + +import org.eclipse.swt.graphics.Image; +import org.eclipse.wb.internal.core.DesignerPlugin; + +import java.util.Collections; +import java.util.Comparator; +import java.util.List; +import java.util.Locale; +import java.util.Map; + +/** + * Repository of flags for locale/country. + * + * @author scheglov_ke + * @coverage core.nls.ui + */ +public class FlagImagesRepository { + private static Map m_countriesFlags = Maps.newHashMap(); + private static Locale[] m_locales; + + //////////////////////////////////////////////////////////////////////////// + // + // Initialization + // + //////////////////////////////////////////////////////////////////////////// + private static void init() { + if (m_locales == null) { + // prepare sorted Locale's + { + List locales = Lists.newArrayList(); + Collections.addAll(locales, Locale.getAvailableLocales()); + Collections.sort(locales, new Comparator() { + @Override + public int compare(Locale o1, Locale o2) { + return o1.toString().compareTo(o2.toString()); + } + }); + m_locales = locales.toArray(new Locale[locales.size()]); + } + } + } + + //////////////////////////////////////////////////////////////////////////// + // + // Access + // + //////////////////////////////////////////////////////////////////////////// + /** + * @return the array of {@link Locale}'s sorted by title. + */ + public static Locale[] getSortedLocales() { + init(); + return m_locales; + } + + /** + * @return the {@link Image} of flag for default {@link Locale}. + */ + public static Image getEmptyFlagImage() { + return DesignerPlugin.getImage("nls/flags/flag_empty.png"); + } + + /** + * @return the {@link Image} of flag for given {@link Locale}. + */ + public static Image getFlagImage(Locale locale) { + init(); + String localeCountry = locale.getCountry(); + String localeLanguage = locale.getLanguage(); + +// BEGIN ADT MODIFICATIONS + return getFlagImage(localeCountry, localeLanguage); + } + + public static Image getFlagImage(String localeCountry, String localeLanguage) { + init(); +// END ADT MODIFICATIONS + + // if locale has no assosiated country set, try to find the locale with the same language but with the country set + if (localeCountry.length() == 0) { + // special cases + if (localeLanguage.equals("ar")) { + localeCountry = "AE"; + } else if (localeLanguage.equals("zh")) { + localeCountry = "CN"; + } else if (localeLanguage.equals("en")) { + localeCountry = "US"; + } else { + // try to guess + String localeCountryCandidate = ""; + for (int i = 0; i < m_locales.length; i++) { + Locale lookupLocale = m_locales[i]; + String lookupLanguage = lookupLocale.getLanguage(); + if (lookupLanguage.equals(localeLanguage)) { + if (lookupLocale.getCountry().length() != 0) { + localeCountryCandidate = lookupLocale.getCountry(); + if (localeCountryCandidate.equalsIgnoreCase(lookupLanguage)) { + localeCountry = localeCountryCandidate; + break; + } + } + } + } + if (localeCountry.length() == 0) { + localeCountry = localeCountryCandidate; + } + } + } + // + Image flagImage = m_countriesFlags.get(localeCountry); + if (flagImage == null) { + try { + String flagFileName = null; + if (localeCountry.equalsIgnoreCase("YU")) { + localeCountry = "CS"; // use Serbia and Montenegro + } + if (Strings.isNullOrEmpty(localeCountry)) { + return null; + } + flagFileName = localeCountry.toLowerCase() + ".png"; + flagImage = DesignerPlugin.getImage("nls/flags/" + flagFileName); + m_countriesFlags.put(localeCountry, flagImage); + } catch (Throwable e) { + return null; + } + } + return flagImage; + } +} diff --git a/propertysheet/src/org/eclipse/wb/internal/core/nls/ui/LocaleUtils.java b/propertysheet/src/org/eclipse/wb/internal/core/nls/ui/LocaleUtils.java new file mode 100644 index 0000000..699bba8 --- /dev/null +++ b/propertysheet/src/org/eclipse/wb/internal/core/nls/ui/LocaleUtils.java @@ -0,0 +1,61 @@ +/******************************************************************************* + * Copyright (c) 2011 Google, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Google, Inc. - initial API and implementation + *******************************************************************************/ +package org.eclipse.wb.internal.core.nls.ui; + +import org.eclipse.wb.internal.core.nls.model.LocaleInfo; + +import org.eclipse.swt.graphics.Image; + +import java.util.Arrays; +import java.util.Comparator; + +/** + * UI utils for {@link LocaleInfo}. + * + * @author scheglov_ke + * @coverage core.nls.ui + */ +public class LocaleUtils { + //////////////////////////////////////////////////////////////////////////// + // + // Constructor + // + //////////////////////////////////////////////////////////////////////////// + private LocaleUtils() { + } + + //////////////////////////////////////////////////////////////////////////// + // + // Utils + // + //////////////////////////////////////////////////////////////////////////// + /** + * @return the flag image for given {@link LocaleInfo}. + */ + public static Image getImage(LocaleInfo localeInfo) { + if (localeInfo.isDefault()) { + return FlagImagesRepository.getEmptyFlagImage(); + } else { + return FlagImagesRepository.getFlagImage(localeInfo.getLocale()); + } + } + + /** + * Sorts given array of {@link LocaleInfo}'s by title. + */ + public static void sortByTitle(LocaleInfo locales[]) { + Arrays.sort(locales, new Comparator() { + public int compare(LocaleInfo locale_1, LocaleInfo locale_2) { + return locale_1.getTitle().compareTo(locale_2.getTitle()); + } + }); + } +} -- cgit v1.2.3