--------------Boundary-00=_4Z7LX30Y2009GDJBOWJW Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit Maybe I'm the only person, but I found the KLanguageCombo as used by KPersonalizer, the country/language control module and the KDM control module extremely ugly. As long as you don't use it the fake combobox looks ok, but the way it is drawn and behaves when you actually use it is IMO a bit hackish. Now that I fixed the KDE styles a few weeks ago that QPushButton::setPopup is properly rendered I decided to create a new language selector based on QPushButton. The ugly paintEvent and keyPressEvent stuff is completely gone and some other parts of the code look a bit cleaner as well. Especially the fact that you don't have to clear and reset the list after a change. One could argue that a language selector is essentially more a ComboBox than a PushButton, because you select something, but I think one look at the result should convince everyone that this is still very intuitive and actually looks much nicer ;-). If someone really insists on using a ComboBox then I challenge him/her to come up with a solution that draws the drop-down part in such a way that it 1. is placed where it should be and doesn't overlap the button and 2. Looks like one whole, that is, the combobutton is drawn depressed or any other measure is taken to make sure that it is immediately clear that the popup menu belongs to the combo... Attached is a tar.gz with the .cpp and .h file for KLanguageButton and a diff against KPersonalizer. The diff is almost nothing more than s/KLanguageCombo/KLanguageButton, though Qt designer decided to change quite some lines in the .ui file, which makes the diff rather large. Question is: can I commit this stuff? If so, I'll manually edit the .ui file instead of using designer so the .ui file remains as much as possible the way it is now and I'll change the same stuff in the KControl modules that use this widget. The widget is not in kdelibs, it is duplicated around the KDE code wherever it is used. Might be a candidate for kdeui, but I personally don't want to write the docs ;-) Also, the original code from Hans Petter Bieker was GPL licensed, this must be changed into LGPL to get it in kdelibs. (CC:ed Hans Petter so he is hopefully reading this as well :-) Martijn PS: I assume the language selector combo works as well as the country selector, but I don't have _any_ i18n installed here, so I only have the Default (C) language here. I could only really test with the country selector which looks great now. Might be a that I missed something because of this, though it's not likely. --------------Boundary-00=_4Z7LX30Y2009GDJBOWJW Content-Type: text/x-diff; charset="iso-8859-1"; name="kpersonalizer.diff" Content-Transfer-Encoding: base64 Content-Description: Diff against KPersonalizer Content-Disposition: attachment; filename="kpersonalizer.diff" PyBrcGVyc29uYWxpemVyLmRpZmYKPyBrbGFuZ3VhZ2VidXR0b24uaAo/IGtsYW5ndWFnZWJ1dHRv bi5jcHAKSW5kZXg6IE1ha2VmaWxlLmFtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL2tkZS9r ZGViYXNlL2twZXJzb25hbGl6ZXIvTWFrZWZpbGUuYW0sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEu OApkaWZmIC1iIC11IC1wIC1yMS44IE1ha2VmaWxlLmFtCi0tLSBNYWtlZmlsZS5hbQkyMDAxLzA2 LzE1IDE4OjA3OjI4CTEuOAorKysgTWFrZWZpbGUuYW0JMjAwMS8wNy8xNiAyMjowMTozNwpAQCAt MSwxMyArMSwxMyBAQAogIyMjIyMjIyBrZGV2ZWxvcCB3aWxsIG92ZXJ3cml0ZSB0aGlzIHBhcnQh ISEgKGJlZ2luKSMjIyMjIyMjIyMKIGJpbl9QUk9HUkFNUyA9IGtwZXJzb25hbGl6ZXIKLWtwZXJz b25hbGl6ZXJfU09VUkNFUyA9IGtsb2NhbGVhZHYuY3BwIGt0YWdjb21ib2JveC5jcHAga2xhbmdj b21iby5jcHAga3JlZmluZXBhZ2UuY3BwIFwKK2twZXJzb25hbGl6ZXJfU09VUkNFUyA9IGtsb2Nh bGVhZHYuY3BwIGt0YWdjb21ib2JveC5jcHAga2xhbmdjb21iby5jcHAga2xhbmd1YWdlYnV0dG9u LmNwcCBrcmVmaW5lcGFnZS5jcHAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAga3N0eWxlcGFnZS5jcHAga2V5ZWNhbmR5cGFnZS5jcHAga29zcGFnZS5jcHAga2Nv dW50cnlwYWdlLmNwcCBrcGVyc29uYWxpemVyLmNwcCBcCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBtYWluLmNwcCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBrY291bnRyeXBhZ2VkbGcudWkga29zcGFnZWRsZy51aSBrZXllY2Fu ZHlwYWdlZGxnLnVpIGtzdHlsZXBhZ2VkbGcudWkga3JlZmluZXBhZ2VkbGcudWkKIAoga3BlcnNv bmFsaXplcl9MREFERCAgID0gJChMSUJfS0ZJTEUpIAogCi1FWFRSQV9ESVNUID0gbWFpbi5jcHAg a3BlcnNvbmFsaXplci5jcHAga3BlcnNvbmFsaXplci5oIGtwZXJzb25hbGl6ZXIuZGVza3RvcCBr Y291bnRyeXBhZ2UuY3BwIGtjb3VudHJ5cGFnZS5oIGtvc3BhZ2UuY3BwIGtvc3BhZ2UuaCBrZXll Y2FuZHlwYWdlLmNwcCBrZXllY2FuZHlwYWdlLmgga3N0eWxlcGFnZS5jcHAga3N0eWxlcGFnZS5o IGtyZWZpbmVwYWdlLmNwcCBrcmVmaW5lcGFnZS5oIGtsYW5nY29tYm8uY3BwIGtsYW5nY29tYm8u aCBrdGFnY29tYm9ib3guY3BwIGt0YWdjb21ib2JveC5oIGtsb2NhbGVhZHYuY3BwIGtsb2NhbGVh ZHYuaCBoaTE2LWFwcC1rcGVyc29uYWxpemVyLnBuZyBoaTMyLWFwcC1rcGVyc29uYWxpemVyLnBu ZyBSRUFETUUga2NvdW50cnlwYWdlZGxnLnVpIGtvc3BhZ2UudWkga2V5ZWNhbmR5cGFnZWRsZy51 aSBrc3R5bGVwYWdlZGxnLnVpIGtyZWZpbmVwYWdlZGxnLnVpCitFWFRSQV9ESVNUID0gbWFpbi5j cHAga3BlcnNvbmFsaXplci5jcHAga3BlcnNvbmFsaXplci5oIGtwZXJzb25hbGl6ZXIuZGVza3Rv cCBrY291bnRyeXBhZ2UuY3BwIGtjb3VudHJ5cGFnZS5oIGtvc3BhZ2UuY3BwIGtvc3BhZ2UuaCBr ZXllY2FuZHlwYWdlLmNwcCBrZXllY2FuZHlwYWdlLmgga3N0eWxlcGFnZS5jcHAga3N0eWxlcGFn ZS5oIGtyZWZpbmVwYWdlLmNwcCBrcmVmaW5lcGFnZS5oIGtsYW5nY29tYm8uY3BwIGtsYW5nY29t Ym8uaCBrbGFuZ3VhZ2Vjb21iby5jcHAga2xhbmd1YWdlY29tYm8uaCBrdGFnY29tYm9ib3guY3Bw IGt0YWdjb21ib2JveC5oIGtsb2NhbGVhZHYuY3BwIGtsb2NhbGVhZHYuaCBoaTE2LWFwcC1rcGVy c29uYWxpemVyLnBuZyBoaTMyLWFwcC1rcGVyc29uYWxpemVyLnBuZyBSRUFETUUga2NvdW50cnlw YWdlZGxnLnVpIGtvc3BhZ2UudWkga2V5ZWNhbmR5cGFnZWRsZy51aSBrc3R5bGVwYWdlZGxnLnVp IGtyZWZpbmVwYWdlZGxnLnVpCiAKIGRlc2t0b3BfREFUQSA9IGtwZXJzb25hbGl6ZXIuZGVza3Rv cAogZGVza3RvcGRpciA9ICQoa2RlX2FwcHNkaXIpL1N5c3RlbQpJbmRleDoga2NvdW50cnlwYWdl LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9rZGUva2RlYmFzZS9rcGVyc29uYWxpemVy L2tjb3VudHJ5cGFnZS5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTQKZGlmZiAtYiAtdSAt cCAtcjEuMTQga2NvdW50cnlwYWdlLmNwcAotLS0ga2NvdW50cnlwYWdlLmNwcAkyMDAxLzA3LzE0 IDE0OjE2OjU5CTEuMTQKKysrIGtjb3VudHJ5cGFnZS5jcHAJMjAwMS8wNy8xNiAyMjowMTo0MApA QCAtMjksNyArMjksNyBAQAogI2luY2x1ZGUgPGtjb25maWcuaD4KICNpbmNsdWRlIDxkY29wY2xp ZW50Lmg+CiAKLSNpbmNsdWRlICJrbGFuZ2NvbWJvLmgiCisjaW5jbHVkZSAia2xhbmd1YWdlYnV0 dG9uLmgiCiAjaW5jbHVkZSAia2xvY2FsZWFkdi5oIgogCiAjaW5jbHVkZSAia2NvdW50cnlwYWdl LmgiCkBAIC0xMTIsNyArMTEyLDcgQEAgS0NvdW50cnlQYWdlOjp+S0NvdW50cnlQYWdlKCl7CiB9 CiAKIAotdm9pZCBLQ291bnRyeVBhZ2U6OmxvYWRDb3VudHJ5TGlzdChLTGFuZ3VhZ2VDb21ibyAq Y29tYm8pCit2b2lkIEtDb3VudHJ5UGFnZTo6bG9hZENvdW50cnlMaXN0KEtMYW5ndWFnZUJ1dHRv biAqY29tYm8pCiB7CiAKICAgLy8gdGVtcGVyYXJ5IHVzZSBvZiBvdXIgbG9jYWxlIGFzIHRoZSBn bG9iYWwgbG9jYWxlCkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBLQ291bnRyeVBhZ2U6OmxvYWRD b3VudHJ5TGlzdChLTGFuZwogICBLR2xvYmFsOjpfbG9jYWxlID0gbHNhdmU7CiB9CiAKLXZvaWQg S0NvdW50cnlQYWdlOjpsb2FkTGFuZ3VhZ2VMaXN0KEtMYW5ndWFnZUNvbWJvICpjb21ibywgY29u c3QgUVN0cmluZ0xpc3QgJmZpcnN0KQordm9pZCBLQ291bnRyeVBhZ2U6OmxvYWRMYW5ndWFnZUxp c3QoS0xhbmd1YWdlQnV0dG9uICpjb21ibywgY29uc3QgUVN0cmluZ0xpc3QgJmZpcnN0KQogewog ICAvLyB0ZW1wZXJhcnkgdXNlIG9mIG91ciBsb2NhbGUgYXMgdGhlIGdsb2JhbCBsb2NhbGUKICAg S0xvY2FsZSAqbHNhdmUgPSBLR2xvYmFsOjpfbG9jYWxlOwpAQCAtMjMwLDcgKzIzMCw3IEBAIHZv aWQgS0NvdW50cnlQYWdlOjpsb2FkTGFuZ3VhZ2VMaXN0KEtMYW4KIH0KIAogLyoqIE5vIGRlc2Ny aXB0aW9ucyAqLwotdm9pZCBLQ291bnRyeVBhZ2U6OnNhdmUoS0xhbmd1YWdlQ29tYm8gKmNvbWJv Q291bnRyeSwgS0xhbmd1YWdlQ29tYm8gKmNvbWJvTGFuZyl7Cit2b2lkIEtDb3VudHJ5UGFnZTo6 c2F2ZShLTGFuZ3VhZ2VCdXR0b24gKmNvbWJvQ291bnRyeSwgS0xhbmd1YWdlQnV0dG9uICpjb21i b0xhbmcpewogICBrZERlYnVnKCkgPDwgIktDb3VudHJ5UGFnZTo6c2F2ZSgpIiA8PCBlbmRsOwog ICBLQ29uZmlnQmFzZSAqY29uZmlnID0gS0dsb2JhbDo6Y29uZmlnKCk7CiAKQEAgLTI3OCw4ICsy NzgsOCBAQCB2b2lkIEtDb3VudHJ5UGFnZTo6c2V0TGFuZ0ZvckNvdW50cnkoaW50CiAgIGxvY2Fs ZS0+c2V0TGFuZ3VhZ2UobGFuZyk7CiAgIGxvY2FsZS0+c2V0Q291bnRyeShjb3VudHJ5KTsKIAot ICBsb2FkTGFuZ3VhZ2VMaXN0KGNiX2xhbmd1YWdlLCBsYW5ncyk7Ci0gIGxvYWRDb3VudHJ5TGlz dChjYl9jb3VudHJ5KTsKKy8qICBsb2FkTGFuZ3VhZ2VMaXN0KGNiX2xhbmd1YWdlLCBsYW5ncyk7 CisgIGxvYWRDb3VudHJ5TGlzdChjYl9jb3VudHJ5KTsqLwogCiAgIGNiX2xhbmd1YWdlLT5zZXRD dXJyZW50SXRlbShsYW5nKTsKIH0KSW5kZXg6IGtjb3VudHJ5cGFnZS5oCj09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNT IGZpbGU6IC9ob21lL2tkZS9rZGViYXNlL2twZXJzb25hbGl6ZXIva2NvdW50cnlwYWdlLmgsdgpy ZXRyaWV2aW5nIHJldmlzaW9uIDEuNgpkaWZmIC1iIC11IC1wIC1yMS42IGtjb3VudHJ5cGFnZS5o Ci0tLSBrY291bnRyeXBhZ2UuaAkyMDAxLzA2LzA5IDIzOjEyOjQxCTEuNgorKysga2NvdW50cnlw YWdlLmgJMjAwMS8wNy8xNiAyMjowMTo0MApAQCAtMjAsNyArMjAsNyBAQAogCiAjaW5jbHVkZSAi a2NvdW50cnlwYWdlZGxnLmgiCiAKLWNsYXNzIEtMYW5ndWFnZUNvbWJvOworY2xhc3MgS0xhbmd1 YWdlQnV0dG9uOwogY2xhc3MgS0xvY2FsZUFkdmFuY2VkOwogY2xhc3MgUVN0cmluZ0xpc3Q7CiAK QEAgLTM0LDEwICszNCwxMCBAQCBwdWJsaWM6CiAgICAgS0NvdW50cnlQYWdlKFFXaWRnZXQgKnBh cmVudD0wLCBjb25zdCBjaGFyICpuYW1lPTApOwogICAgIH5LQ291bnRyeVBhZ2UoKTsKIAotICAg IHZvaWQgbG9hZENvdW50cnlMaXN0KEtMYW5ndWFnZUNvbWJvICpjb21ibyk7Ci0gICAgdm9pZCBs b2FkTGFuZ3VhZ2VMaXN0KEtMYW5ndWFnZUNvbWJvICpjb21ibywgY29uc3QgUVN0cmluZ0xpc3Qg JmZpcnN0KTsKKyAgICB2b2lkIGxvYWRDb3VudHJ5TGlzdChLTGFuZ3VhZ2VCdXR0b24gKmNvbWJv KTsKKyAgICB2b2lkIGxvYWRMYW5ndWFnZUxpc3QoS0xhbmd1YWdlQnV0dG9uICpjb21ibywgY29u c3QgUVN0cmluZ0xpc3QgJmZpcnN0KTsKICAgICAvKiogTm8gZGVzY3JpcHRpb25zICovCi0gICAg dm9pZCBzYXZlKEtMYW5ndWFnZUNvbWJvICpjb21ib0NvdW50cnksIEtMYW5ndWFnZUNvbWJvICpj b21ib0xhbmcpOworICAgIHZvaWQgc2F2ZShLTGFuZ3VhZ2VCdXR0b24gKmNvbWJvQ291bnRyeSwg S0xhbmd1YWdlQnV0dG9uICpjb21ib0xhbmcpOwogCiAgICAgS0xvY2FsZUFkdmFuY2VkICpsb2Nh bGU7CiAKSW5kZXg6IGtjb3VudHJ5cGFnZWRsZy51aQo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9t ZS9rZGUva2RlYmFzZS9rcGVyc29uYWxpemVyL2tjb3VudHJ5cGFnZWRsZy51aSx2CnJldHJpZXZp bmcgcmV2aXNpb24gMS41CmRpZmYgLWIgLXUgLXAgLXIxLjUga2NvdW50cnlwYWdlZGxnLnVpCi0t LSBrY291bnRyeXBhZ2VkbGcudWkJMjAwMS8wNi8xMSAwNzowOTowMwkxLjUKKysrIGtjb3VudHJ5 cGFnZWRsZy51aQkyMDAxLzA3LzE2IDIyOjAxOjQyCkBAIC0xMSw3ICsxMSw3IEBACiAgICAgICAg IDxyZWN0PgogICAgICAgICAgICAgPHg+MDwveD4KICAgICAgICAgICAgIDx5PjA8L3k+Ci0gICAg ICAgICAgICA8d2lkdGg+NTgzPC93aWR0aD4KKyAgICAgICAgICAgIDx3aWR0aD41NzU8L3dpZHRo PgogICAgICAgICAgICAgPGhlaWdodD40NTI8L2hlaWdodD4KICAgICAgICAgPC9yZWN0PgogICAg IDwvcHJvcGVydHk+CkBAIC0yOCw2NSArMjgsNiBAQAogICAgICAgICAgICAgPG5hbWU+c3BhY2lu ZzwvbmFtZT4KICAgICAgICAgICAgIDxudW1iZXI+NjwvbnVtYmVyPgogICAgICAgICA8L3Byb3Bl cnR5PgotICAgICAgICA8d2lkZ2V0IHJvdz0iNiIgIGNvbHVtbj0iMSIgPgotICAgICAgICAgICAg PGNsYXNzPlFMYXlvdXRXaWRnZXQ8L2NsYXNzPgotICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNl dD0iMSI+Ci0gICAgICAgICAgICAgICAgPG5hbWU+bmFtZTwvbmFtZT4KLSAgICAgICAgICAgICAg ICA8Y3N0cmluZz5MYXlvdXQ2PC9jc3RyaW5nPgotICAgICAgICAgICAgPC9wcm9wZXJ0eT4KLSAg ICAgICAgICAgIDxoYm94PgotICAgICAgICAgICAgICAgIDxwcm9wZXJ0eSBzdGRzZXQ9IjEiPgot ICAgICAgICAgICAgICAgICAgICA8bmFtZT5tYXJnaW48L25hbWU+Ci0gICAgICAgICAgICAgICAg ICAgIDxudW1iZXI+MDwvbnVtYmVyPgotICAgICAgICAgICAgICAgIDwvcHJvcGVydHk+Ci0gICAg ICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNldD0iMSI+Ci0gICAgICAgICAgICAgICAgICAgIDxu YW1lPnNwYWNpbmc8L25hbWU+Ci0gICAgICAgICAgICAgICAgICAgIDxudW1iZXI+NjwvbnVtYmVy PgotICAgICAgICAgICAgICAgIDwvcHJvcGVydHk+Ci0gICAgICAgICAgICAgICAgPHdpZGdldD4K LSAgICAgICAgICAgICAgICAgICAgPGNsYXNzPktMYW5ndWFnZUNvbWJvPC9jbGFzcz4KLSAgICAg ICAgICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNldD0iMSI+Ci0gICAgICAgICAgICAgICAgICAg ICAgICA8bmFtZT5uYW1lPC9uYW1lPgotICAgICAgICAgICAgICAgICAgICAgICAgPGNzdHJpbmc+ Y2JfbGFuZ3VhZ2U8L2NzdHJpbmc+Ci0gICAgICAgICAgICAgICAgICAgIDwvcHJvcGVydHk+Ci0g ICAgICAgICAgICAgICAgICAgIDxwcm9wZXJ0eSBzdGRzZXQ9IjEiPgotICAgICAgICAgICAgICAg ICAgICAgICAgPG5hbWU+c2l6ZVBvbGljeTwvbmFtZT4KLSAgICAgICAgICAgICAgICAgICAgICAg IDxzaXplcG9saWN5PgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoc2l6ZXR5cGU+MTwv aHNpemV0eXBlPgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx2c2l6ZXR5cGU+MDwvdnNp emV0eXBlPgotICAgICAgICAgICAgICAgICAgICAgICAgPC9zaXplcG9saWN5PgotICAgICAgICAg ICAgICAgICAgICA8L3Byb3BlcnR5PgotICAgICAgICAgICAgICAgICAgICA8cHJvcGVydHkgc3Rk c2V0PSIxIj4KLSAgICAgICAgICAgICAgICAgICAgICAgIDxuYW1lPm1pbmltdW1TaXplPC9uYW1l PgotICAgICAgICAgICAgICAgICAgICAgICAgPHNpemU+Ci0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgPHdpZHRoPjE1MDwvd2lkdGg+Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhl aWdodD4wPC9oZWlnaHQ+Ci0gICAgICAgICAgICAgICAgICAgICAgICA8L3NpemU+Ci0gICAgICAg ICAgICAgICAgICAgIDwvcHJvcGVydHk+Ci0gICAgICAgICAgICAgICAgPC93aWRnZXQ+Ci0gICAg ICAgICAgICAgICAgPHNwYWNlcj4KLSAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5PgotICAg ICAgICAgICAgICAgICAgICAgICAgPG5hbWU+bmFtZTwvbmFtZT4KLSAgICAgICAgICAgICAgICAg ICAgICAgIDxjc3RyaW5nPlNwYWNlcjZfMl8yPC9jc3RyaW5nPgotICAgICAgICAgICAgICAgICAg ICA8L3Byb3BlcnR5PgotICAgICAgICAgICAgICAgICAgICA8cHJvcGVydHkgc3Rkc2V0PSIxIj4K LSAgICAgICAgICAgICAgICAgICAgICAgIDxuYW1lPm9yaWVudGF0aW9uPC9uYW1lPgotICAgICAg ICAgICAgICAgICAgICAgICAgPGVudW0+SG9yaXpvbnRhbDwvZW51bT4KLSAgICAgICAgICAgICAg ICAgICAgPC9wcm9wZXJ0eT4KLSAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNldD0i MSI+Ci0gICAgICAgICAgICAgICAgICAgICAgICA8bmFtZT5zaXplVHlwZTwvbmFtZT4KLSAgICAg ICAgICAgICAgICAgICAgICAgIDxlbnVtPlByZWZlcnJlZDwvZW51bT4KLSAgICAgICAgICAgICAg ICAgICAgPC9wcm9wZXJ0eT4KLSAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5PgotICAgICAg ICAgICAgICAgICAgICAgICAgPG5hbWU+c2l6ZUhpbnQ8L25hbWU+Ci0gICAgICAgICAgICAgICAg ICAgICAgICA8c2l6ZT4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8d2lkdGg+MjA8L3dp ZHRoPgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoZWlnaHQ+MjA8L2hlaWdodD4KLSAg ICAgICAgICAgICAgICAgICAgICAgIDwvc2l6ZT4KLSAgICAgICAgICAgICAgICAgICAgPC9wcm9w ZXJ0eT4KLSAgICAgICAgICAgICAgICA8L3NwYWNlcj4KLSAgICAgICAgICAgIDwvaGJveD4KLSAg ICAgICAgPC93aWRnZXQ+CiAgICAgICAgIDx3aWRnZXQgcm93PSI1IiAgY29sdW1uPSIxIiA+CiAg ICAgICAgICAgICA8Y2xhc3M+UUxhYmVsPC9jbGFzcz4KICAgICAgICAgICAgIDxwcm9wZXJ0eSBz dGRzZXQ9IjEiPgpAQCAtMTUxLDcgKzkyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgPG51bWJl cj42PC9udW1iZXI+CiAgICAgICAgICAgICAgICAgPC9wcm9wZXJ0eT4KICAgICAgICAgICAgICAg ICA8d2lkZ2V0PgotICAgICAgICAgICAgICAgICAgICA8Y2xhc3M+S0xhbmd1YWdlQ29tYm88L2Ns YXNzPgorICAgICAgICAgICAgICAgICAgICA8Y2xhc3M+S0xhbmd1YWdlQnV0dG9uPC9jbGFzcz4K ICAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNldD0iMSI+CiAgICAgICAgICAgICAg ICAgICAgICAgICA8bmFtZT5uYW1lPC9uYW1lPgogICAgICAgICAgICAgICAgICAgICAgICAgPGNz dHJpbmc+Y2JfY291bnRyeTwvY3N0cmluZz4KQEAgLTIwNSw3ICsxNDYsNyBAQAogICAgICAgICAg ICAgICAgIDxzdHJpbmc+UGxlYXNlIGNob29zZSB5b3VyIGNvdW50cnk6PC9zdHJpbmc+CiAgICAg ICAgICAgICA8L3Byb3BlcnR5PgogICAgICAgICA8L3dpZGdldD4KLSAgICAgICAgPHdpZGdldCBy b3c9IjAiICBjb2x1bW49IjAiICByb3dzcGFuPSI5IiAgY29sc3Bhbj0iMSIgPgorICAgICAgICA8 d2lkZ2V0IHJvdz0iMCIgIGNvbHVtbj0iMCIgIHJvd3NwYW49IjEwIiAgY29sc3Bhbj0iMSIgPgog ICAgICAgICAgICAgPGNsYXNzPlFMYWJlbDwvY2xhc3M+CiAgICAgICAgICAgICA8cHJvcGVydHkg c3Rkc2V0PSIxIj4KICAgICAgICAgICAgICAgICA8bmFtZT5uYW1lPC9uYW1lPgpAQCAtMjYzLDcg KzIwNCw3IEBACiAgICAgICAgICAgICAgICAgPC9zaXplPgogICAgICAgICAgICAgPC9wcm9wZXJ0 eT4KICAgICAgICAgPC9zcGFjZXI+Ci0gICAgICAgIDx3aWRnZXQgcm93PSI4IiAgY29sdW1uPSIx IiA+CisgICAgICAgIDx3aWRnZXQgcm93PSI5IiAgY29sdW1uPSIxIiA+CiAgICAgICAgICAgICA8 Y2xhc3M+UUNoZWNrQm94PC9jbGFzcz4KICAgICAgICAgICAgIDxwcm9wZXJ0eSBzdGRzZXQ9IjEi PgogICAgICAgICAgICAgICAgIDxuYW1lPm5hbWU8L25hbWU+CkBAIC0yODUsNyArMjI2LDcgQEAK ICAgICAgICAgICAgICAgICA8c3RyaW5nPlRoaXMgYWxsb3dlcyB2aXN1YWxseSBpbXBhaXJlZCBw ZW9wbGUgdG8gdXNlIHRoZSBwZXJzb25hbGl6ZXI8L3N0cmluZz4KICAgICAgICAgICAgIDwvcHJv cGVydHk+CiAgICAgICAgIDwvd2lkZ2V0PgotICAgICAgICA8c3BhY2VyIHJvdz0iNyIgIGNvbHVt bj0iMSIgPgorICAgICAgICA8c3BhY2VyIHJvdz0iOCIgIGNvbHVtbj0iMSIgPgogICAgICAgICAg ICAgPHByb3BlcnR5PgogICAgICAgICAgICAgICAgIDxuYW1lPm5hbWU8L25hbWU+CiAgICAgICAg ICAgICAgICAgPGNzdHJpbmc+U3BhY2VyNTwvY3N0cmluZz4KQEAgLTMwNiwxMiArMjQ3LDcxIEBA CiAgICAgICAgICAgICAgICAgPC9zaXplPgogICAgICAgICAgICAgPC9wcm9wZXJ0eT4KICAgICAg ICAgPC9zcGFjZXI+CisgICAgICAgIDx3aWRnZXQgcm93PSI2IiAgY29sdW1uPSIxIiA+CisgICAg ICAgICAgICA8Y2xhc3M+UUxheW91dFdpZGdldDwvY2xhc3M+CisgICAgICAgICAgICA8cHJvcGVy dHkgc3Rkc2V0PSIxIj4KKyAgICAgICAgICAgICAgICA8bmFtZT5uYW1lPC9uYW1lPgorICAgICAg ICAgICAgICAgIDxjc3RyaW5nPkxheW91dDY8L2NzdHJpbmc+CisgICAgICAgICAgICA8L3Byb3Bl cnR5PgorICAgICAgICAgICAgPGhib3g+CisgICAgICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNl dD0iMSI+CisgICAgICAgICAgICAgICAgICAgIDxuYW1lPm1hcmdpbjwvbmFtZT4KKyAgICAgICAg ICAgICAgICAgICAgPG51bWJlcj4wPC9udW1iZXI+CisgICAgICAgICAgICAgICAgPC9wcm9wZXJ0 eT4KKyAgICAgICAgICAgICAgICA8cHJvcGVydHkgc3Rkc2V0PSIxIj4KKyAgICAgICAgICAgICAg ICAgICAgPG5hbWU+c3BhY2luZzwvbmFtZT4KKyAgICAgICAgICAgICAgICAgICAgPG51bWJlcj42 PC9udW1iZXI+CisgICAgICAgICAgICAgICAgPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICAgICA8 d2lkZ2V0PgorICAgICAgICAgICAgICAgICAgICA8Y2xhc3M+S0xhbmd1YWdlQnV0dG9uPC9jbGFz cz4KKyAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5IHN0ZHNldD0iMSI+CisgICAgICAgICAg ICAgICAgICAgICAgICA8bmFtZT5uYW1lPC9uYW1lPgorICAgICAgICAgICAgICAgICAgICAgICAg PGNzdHJpbmc+Y2JfbGFuZ3VhZ2U8L2NzdHJpbmc+CisgICAgICAgICAgICAgICAgICAgIDwvcHJv cGVydHk+CisgICAgICAgICAgICAgICAgICAgIDxwcm9wZXJ0eSBzdGRzZXQ9IjEiPgorICAgICAg ICAgICAgICAgICAgICAgICAgPG5hbWU+c2l6ZVBvbGljeTwvbmFtZT4KKyAgICAgICAgICAgICAg ICAgICAgICAgIDxzaXplcG9saWN5PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoc2l6 ZXR5cGU+MTwvaHNpemV0eXBlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx2c2l6ZXR5 cGU+MDwvdnNpemV0eXBlPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zaXplcG9saWN5Pgor ICAgICAgICAgICAgICAgICAgICA8L3Byb3BlcnR5PgorICAgICAgICAgICAgICAgICAgICA8cHJv cGVydHkgc3Rkc2V0PSIxIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxuYW1lPm1pbmltdW1T aXplPC9uYW1lPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNpemU+CisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgPHdpZHRoPjE1MDwvd2lkdGg+CisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgPGhlaWdodD4wPC9oZWlnaHQ+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NpemU+ CisgICAgICAgICAgICAgICAgICAgIDwvcHJvcGVydHk+CisgICAgICAgICAgICAgICAgPC93aWRn ZXQ+CisgICAgICAgICAgICAgICAgPHNwYWNlcj4KKyAgICAgICAgICAgICAgICAgICAgPHByb3Bl cnR5PgorICAgICAgICAgICAgICAgICAgICAgICAgPG5hbWU+bmFtZTwvbmFtZT4KKyAgICAgICAg ICAgICAgICAgICAgICAgIDxjc3RyaW5nPlNwYWNlcjZfMl8yPC9jc3RyaW5nPgorICAgICAgICAg ICAgICAgICAgICA8L3Byb3BlcnR5PgorICAgICAgICAgICAgICAgICAgICA8cHJvcGVydHkgc3Rk c2V0PSIxIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxuYW1lPm9yaWVudGF0aW9uPC9uYW1l PgorICAgICAgICAgICAgICAgICAgICAgICAgPGVudW0+SG9yaXpvbnRhbDwvZW51bT4KKyAgICAg ICAgICAgICAgICAgICAgPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5 IHN0ZHNldD0iMSI+CisgICAgICAgICAgICAgICAgICAgICAgICA8bmFtZT5zaXplVHlwZTwvbmFt ZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlbnVtPlByZWZlcnJlZDwvZW51bT4KKyAgICAg ICAgICAgICAgICAgICAgPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICAgICAgICAgPHByb3BlcnR5 PgorICAgICAgICAgICAgICAgICAgICAgICAgPG5hbWU+c2l6ZUhpbnQ8L25hbWU+CisgICAgICAg ICAgICAgICAgICAgICAgICA8c2l6ZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8d2lk dGg+MjA8L3dpZHRoPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoZWlnaHQ+MjA8L2hl aWdodD4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc2l6ZT4KKyAgICAgICAgICAgICAgICAg ICAgPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgICAgICA8L3NwYWNlcj4KKyAgICAgICAgICAgIDwv aGJveD4KKyAgICAgICAgPC93aWRnZXQ+CiAgICAgPC9ncmlkPgogPC93aWRnZXQ+CiA8Y3VzdG9t d2lkZ2V0cz4KICAgICA8Y3VzdG9td2lkZ2V0PgotICAgICAgICA8Y2xhc3M+S0xhbmd1YWdlQ29t Ym88L2NsYXNzPgotICAgICAgICA8aGVhZGVyIGxvY2F0aW9uPSJsb2NhbCI+a2xhbmdjb21iby5o PC9oZWFkZXI+CisgICAgICAgIDxjbGFzcz5LTGFuZ3VhZ2VCdXR0b248L2NsYXNzPgorICAgICAg ICA8aGVhZGVyIGxvY2F0aW9uPSJsb2NhbCI+a2xhbmd1YWdlYnV0dG9uLmg8L2hlYWRlcj4KICAg ICAgICAgPHNpemVoaW50PgogICAgICAgICAgICAgPHdpZHRoPi0xPC93aWR0aD4KICAgICAgICAg ICAgIDxoZWlnaHQ+LTE8L2hlaWdodD4K --------------Boundary-00=_4Z7LX30Y2009GDJBOWJW Content-Type: application/x-gzip; name="kpersonalizer.tar.gz" Content-Transfer-Encoding: base64 Content-Description: KLanguageButton class for KPersonalizer Content-Disposition: attachment; filename="kpersonalizer.tar.gz" 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 --------------Boundary-00=_4Z7LX30Y2009GDJBOWJW--