value "edje_collection_cache" int: 64;
value "finger_size" int: 60;
value "fps" double: 6000.0;
- value "theme" string: "default";
+ value "theme" string: "nbeat-black-hd";
value "modules" string: "ctxpopup_copypasteUI>entry/api:decarta>map/api";
value "tooltip_delay" double: 1.0;
value "cursor_engine_only" uchar: 1;
+elementary (1.0.0+svn.61256slp2+build98) unstable; urgency=low
+
+ * Package Upload
+ * Git: slp-scm.sec.samsung.net:slp/pkgs/e/elementary
+ * Tag: elementary_1.0.0+svn.61256slp2+build98
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com> Mon, 28 Nov 2011 17:18:34 +0900
+
+elementary (1.0.0+svn.61256slp2+build97) unstable; urgency=low
+
+ * Package Upload
+ * Git: slp-scm.sec.samsung.net:slp/pkgs/e/elementary
+ * Tag: elementary_1.0.0+svn.61256slp2+build97
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com> Mon, 28 Nov 2011 17:03:10 +0900
+
elementary (1.0.0+svn.61256slp2+build96) unstable; urgency=low
* Package Upload
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary 0.7.0.57309\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr "Persönlicher Ordner"
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "Abbrechen"
msgid "DateTimeFormat"
msgstr "%d. %b %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "Auswählen"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "Einfügen"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "Kopieren"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "Ausschneiden"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "Suche"
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%d %b %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%d de %b de %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: Elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr "Home"
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "Annuler"
msgid "DateTimeFormat"
msgstr "%d %b %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "Sélectionner"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "Coller"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "Copier"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "Couper"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "Rechercher"
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "בטל"
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "התחל בחירה"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "הדבק"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "העתק"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "גזור"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "לחפש"
msgstr ""
"Project-Id-Version: Elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr "Home"
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "Annulla"
msgid "DateTimeFormat"
msgstr "%d %b %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "Seleziona"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "Incolla"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "Copia"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "Taglio"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "Ricerca"
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%Y年 %m月 %d日 %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr "홈"
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "취소"
msgid "DateTimeFormat"
msgstr "%Y년 %m월 %d일 %p %I : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "선택"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "붙여넣기"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "복사"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "잘라내기"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "검색"
msgstr ""
"Project-Id-Version: elementary 0.7.0.57309\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr "Persoonlijke map"
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "Annuleren"
msgid "DateTimeFormat"
msgstr "%d %b %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "Selecteren"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "Plakken"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "Kopiëren"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "Knippen"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "Zoeken"
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: Elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr "Cancelar"
msgid "DateTimeFormat"
msgstr "%d de %b de %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr "Selecionar"
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr "Colar"
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr "Copiar"
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr "Cortar"
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr "Búsqueda"
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%d %b %Yг. %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%d %b %Y %H : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%b %d, %Y %I : %M %p"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%Y年 %m月 %d日 %p %I : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%Y年 %m月 %d日 %p %I : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
msgstr ""
"Project-Id-Version: elementary\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2011-11-23 17:09+0900\n"
+"POT-Creation-Date: 2011-11-28 17:27+0900\n"
"PO-Revision-Date: 2011-09-26 21:20+0900\n"
"Last-Translator: Sumanth Krishna Mannam <sumanth.m@samsung.com>\n"
"Language-Team: General\n"
msgid "Home"
msgstr ""
-#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1381
-#: src/lib/elm_searchbar.c:226
+#: src/lib/elc_fileselector.c:995 src/lib/elm_entry.c:1396
+#: src/lib/elm_searchbar.c:211
msgid "Cancel"
msgstr ""
msgid "DateTimeFormat"
msgstr "%Y年 %m月 %d日 %p %I : %M"
-#: src/lib/elm_entry.c:1355
+#: src/lib/elm_entry.c:1370
msgid "Select"
msgstr ""
-#: src/lib/elm_entry.c:1360
+#: src/lib/elm_entry.c:1375
msgid "Paste"
msgstr ""
-#: src/lib/elm_entry.c:1365 src/lib/elm_entry.c:1385
+#: src/lib/elm_entry.c:1380 src/lib/elm_entry.c:1400
msgid "More"
msgstr ""
-#: src/lib/elm_entry.c:1375
+#: src/lib/elm_entry.c:1390
msgid "Copy"
msgstr ""
-#: src/lib/elm_entry.c:1378
+#: src/lib/elm_entry.c:1393
msgid "Cut"
msgstr ""
-#: src/lib/elm_searchbar.c:214
+#: src/lib/elm_searchbar.c:199
msgid "Search"
msgstr ""
@author Michael Bouchaud <michael.bouchaud@@gmail.com>
@author Jonathan Atton (Watchwolf) <jonathan.atton@@gmail.com>
@author Brian Wang <brian.wang.0721@@gmail.com>
-@author Mike Blumenkrantz (zmike) <mike@@zentific.com>
+@author Mike Blumenkrantz (discomfitor/zmike) <michael.blumenkrantz@@gmail.com>
@author Samsung Electronics <tbd>
@author Samsung SAIT <tbd>
@author Brett Nash <nash@@nash.id.au>
@author Shinwoo Kim <kimcinoo@@gmail.com>
@author Govindaraju SM <govi.sm@@samsung.com> <govism@@gmail.com>
@author Prince Kumar Dubey <prince.dubey@@samsung.com> <prince.dubey@@gmail.com>
-@author Sung W. Park <sungwoo@gmail.com>
-@author Thierry el Borgi <thierry@substantiel.fr>
-@author Shilpa Singh <shilpa.singh@samsung.com> <shilpasingh.o@gmail.com>
-@author Chanwook Jung <joey.jung@samsung.com>
-@author Hyoyoung Chang <hyoyoung.chang@samsung.com>
-@author Guillaume "Kuri" Friloux <guillaume.friloux@asp64.com>
-@author Kim Yunhan <spbear@gmail.com>
+@author Sung W. Park <sungwoo@@gmail.com>
+@author Thierry el Borgi <thierry@@substantiel.fr>
+@author Shilpa Singh <shilpa.singh@@samsung.com> <shilpasingh.o@@gmail.com>
+@author Chanwook Jung <joey.jung@@samsung.com>
+@author Hyoyoung Chang <hyoyoung.chang@@samsung.com>
+@author Guillaume "Kuri" Friloux <guillaume.friloux@@asp64.com>
+@author Kim Yunhan <spbear@@gmail.com>
+@author Bluezery <ohpowel@@gmail.com>
+@author Nicolas Aguirre <aguirre.nicolas@@gmail.com>
+@author Sanjeev BA <iamsanjeev@@gmail.com>
Please contact <enlightenment-devel@lists.sourceforge.net> to get in
contact with the developers and maintainers.
* elm_object_content_set/get/unset functions to set, retrieve and unset
* objects as content of the @c SWALLOW. After being set to this part, the
* object size, position, visibility, clipping and other description
- * properties will be totally controled by the description of the given part
+ * properties will be totally controlled by the description of the given part
* (inside the Edje theme file).
*
* One can use @c evas_object_size_hint_* functions on the child to have some
* itself).
*
* A similar effect for having a box with its position, size and other things
- * controled by the Layout theme would be to create an Elementary @ref Box
+ * controlled by the Layout theme would be to create an Elementary @ref Box
* widget and add it as a Content in the @c SWALLOW part.
*
* The main difference of using the Layout Box is that its behavior, the box
* properties like layouting format, padding, align, etc. will be all
- * controled by the theme. This means, for example, that a signal could be
+ * controlled by the theme. This means, for example, that a signal could be
* sent to the Layout theme (with elm_object_signal_emit()) and the theme
* handled the signal by changing the box padding, or align, or both. Using
* the Elementary @ref Box widget is not necessarily harder or easier, it
*/
EAPI Evas_Object *elm_layout_box_remove(Evas_Object *obj, const char *part, Evas_Object *child) EINA_ARG_NONNULL(1, 2, 3);
/**
- * Remove all child of the given part box.
+ * Remove all children of the given part box.
*
* @param obj The layout object
* @param part The box part name to remove child.
*/
EAPI Evas_Object *elm_layout_table_unpack(Evas_Object *obj, const char *part, Evas_Object *child_obj) EINA_ARG_NONNULL(1, 2, 3);
/**
- * Remove all child of the given part table.
+ * Remove all the child objects of the given part table.
*
* @param obj The layout object
* @param part The table part name to remove child.
*
* @param obj The layout object.
* @param part_name a part from loaded edje group.
- * @param engine_only if cursors should be just provided by the engine
- * or should also search on widget's theme as well
+ * @param engine_only if cursors should be just provided by the engine (EINA_TRUE)
+ * or should also search on widget's theme as well (EINA_FALSE)
*
* @return EINA_TRUE on success or EINA_FALSE on failure, that may be
* part not exists or it did not had a cursor set.
/**
* @def elm_layout_icon_set
- * Convienience macro to set the icon object in a layout that follows the
+ * Convenience macro to set the icon object in a layout that follows the
* Elementary naming convention for its parts.
*
* @ingroup Layout
* @deprecated use elm_object_content_set() instead
*
*/
- WILL_DEPRECATE EAPI void elm_notify_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
+ WILL_DEPRECATE EAPI void elm_notify_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
/**
* @brief Unset the content of the notify widget
*
* @deprecated use elm_object_content_unset() instead
*
*/
- WILL_DEPRECATE EAPI Evas_Object *elm_notify_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
+ WILL_DEPRECATE EAPI Evas_Object *elm_notify_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
/**
* @brief Return the content of the notify widget
*
* @deprecated use elm_object_content_get() instead
*
*/
- WILL_DEPRECATE EAPI Evas_Object *elm_notify_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ WILL_DEPRECATE EAPI Evas_Object *elm_notify_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
/**
* @brief Set the notify parent
*
* @brief Sets the target object for the hover.
*
* @param obj The hover object
- * @param target The object to center the hover onto. The hover
+ * @param target The object to center the hover onto.
*
* This function will cause the hover to be centered on the target object.
*/
* @brief Gets the target object for the hover.
*
* @param obj The hover object
- * @param parent The object to locate the hover over.
+ * @return The target object for the hover.
*
* @see elm_hover_target_set()
*/
* "smart". This is a special placement hint and its use case
* independs of the calculations coming from
* elm_hover_best_content_location_get(). Its use is for cases when
- * one desires only one hover content, but with a dinamic special
+ * one desires only one hover content, but with a dynamic special
* placement within the hover area. The content's geometry, whenever
- * it changes, will be used to decide on a best location not
+ * it changes, will be used to decide on a best location, not
* extrapolating the hover's parent object view to show it in (still
* being the hover's target determinant of its medium part -- move and
* resize it to simulate finger sizes, for example). If one of the
* @li full: Items will be placed between the descent and ascent, or the
* lowest point in the line and its highest.
*
- * The next image shows different configurations of items and how they
- * are the previously mentioned options affect their sizes. In all cases,
+ * The next image shows different configurations of items and how
+ * the previously mentioned options affect their sizes. In all cases,
* the green line indicates the ascent, blue for the baseline and red for
* the descent.
*
* @see elm_entry_file_set()
*/
EAPI Eina_Bool elm_entry_autosave_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+
+ /**
+ * @enum _Elm_CNP_Mode
+ * @typedef Elm_CNP_Mode
+ * Enum of entry's copy & paste policy.
+ *
+ * @see elm_entry_cnp_mode_set()
+ * @see elm_entry_cnp_mode_get()
+ */
+ typedef enum _Elm_CNP_Mode {
+ ELM_CNP_MODE_MARKUP = 0, /**< copy & paste text with markup tag */
+ ELM_CNP_MODE_NO_IMAGE = 1, /**< copy & paste text without item(image) tag */
+ ELM_CNP_MODE_PLAINTEXT = 2 /**< copy & paste text without markup tag */
+ } Elm_CNP_Mode;
+
+ /**
+ * Control pasting of text and images for the widget.
+ *
+ * Normally the entry allows both text and images to be pasted.
+ * By setting textonly to be ELM_CNP_MODE_NO_IMAGE, this prevents images from being copy or past.
+ * By setting textonly to be ELM_CNP_MODE_PLAINTEXT, this remove all tags in text .
+ *
+ * @note this only changes the behaviour of text.
+ *
+ * @param obj The entry object
+ * @param mode One of #Elm_CNP_Mode: #ELM_CNP_MODE_MARKUP,
+ * #ELM_CNP_MODE_NO_IMAGE, #ELM_CNP_MODE_PLAINTEXT.
+ */
+ EAPI void elm_entry_cnp_mode_set(Evas_Object *obj, Elm_CNP_Mode cnp_mode) EINA_ARG_NONNULL(1);
+ /**
+ * Getting elm_entry text paste/drop mode.
+ *
+ * Normally the entry allows both text and images to be pasted.
+ * This gets the copy & paste mode of the entry.
+ *
+ * @param obj The entry object
+ * @return mode One of #Elm_CNP_Mode: #ELM_CNP_MODE_MARKUP,
+ * #ELM_CNP_MODE_NO_IMAGE, #ELM_CNP_MODE_PLAINTEXT.
+ */
+ EAPI Elm_CNP_Mode elm_entry_cnp_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+
/**
* Control pasting of text and images for the widget.
*
*/
typedef enum _Elm_Web_Zoom_Mode
{
- ELM_WEB_ZOOM_MODE_MANUAL = 0, /**< Zoom controled normally by elm_web_zoom_set */
+ ELM_WEB_ZOOM_MODE_MANUAL = 0, /**< Zoom controlled normally by elm_web_zoom_set */
ELM_WEB_ZOOM_MODE_AUTO_FIT, /**< Zoom until content fits in web object */
ELM_WEB_ZOOM_MODE_AUTO_FILL, /**< Zoom until content fills web object */
ELM_WEB_ZOOM_MODE_LAST
#define ELM_STORE_ITEM_MAPPING_END { ELM_STORE_ITEM_MAPPING_NONE, NULL, 0, { .empty = { EINA_TRUE } } }
#define ELM_STORE_ITEM_MAPPING_OFFSET(st, it) offsetof(st, it)
+ /**
+ * dbsystem Store object
+ *
+ * @addtogroup DBStore
+ * @{
+ *
+ * @return The new object or NULL if it cannot be created
+ */
EAPI Elm_Store *elm_store_dbsystem_new(void);
+ /**
+ * Sets the item count of a store
+ *
+ * @param st The store object
+ * @param count The item count of an store
+ */
EAPI void elm_store_item_count_set(Elm_Store *st, int count) EINA_ARG_NONNULL(1);
+ /**
+ * Set the select func that select the state of a list item whether true or false
+ *
+ * @param st The store object
+ * @param func The select cb function of an store
+ * @param data The new data pointer to set
+ */
EAPI void elm_store_item_select_func_set(Elm_Store *st, Elm_Store_Item_Select_Cb func, const void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Sets the sort func that sort the item with a next in the list
+ *
+ * @param st The store object
+ * @param func The sort cb function of an store
+ * @param data The new data pointer to set
+ */
EAPI void elm_store_item_sort_func_set(Elm_Store *st, Elm_Store_Item_Sort_Cb func, const void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Set the store item free func
+ *
+ * @param st The store object
+ * @param func The free cb function of an store
+ * @param data The new data pointer to set
+ */
EAPI void elm_store_item_free_func_set(Elm_Store *st, Elm_Store_Item_Free_Cb func, const void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Get the item index that included header items
+ *
+ * @param sti The store item object
+ * @return The item index in genlist
+ */
EAPI int elm_store_item_data_index_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
+ /**
+ * Get the DB pointer of an item
+ *
+ * @param sti The store item object
+ * @return The DB pointer of item
+ */
EAPI void *elm_store_dbsystem_db_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
+ /**
+ * Set the DB pointer of an item
+ *
+ * @param sti The store item object
+ * @parm p_db The DB pointer of item
+ */
EAPI void elm_store_dbsystem_db_set(Elm_Store *store, void *pDB) EINA_ARG_NONNULL(1);
+ /**
+ */
EAPI int elm_store_item_index_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
+ /**
+ * Append the item to the genlist
+ *
+ * @param st The store object
+ * @param info The store item info dbsystem object
+ * @return The item of store
+ */
EAPI Elm_Store_Item *elm_store_item_add(Elm_Store *st, Elm_Store_Item_Info *info) EINA_ARG_NONNULL(1);
+ /**
+ * Realize the visible items to the screen
+ *
+ * @param st The store object
+ */
EAPI void elm_store_item_update(Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
+ /**
+ * Realize the item to the screen
+ *
+ * @param sti The store item object
+ */
EAPI void elm_store_visible_items_update(Elm_Store *st) EINA_ARG_NONNULL(1);
+ /**
+ * Delete the item of genlist
+ *
+ * @param sti The store item object
+ */
EAPI void elm_store_item_del(Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
EAPI void elm_store_free(Elm_Store *st);
EAPI Elm_Store *elm_store_filesystem_new(void);
EAPI void *elm_store_item_data_get(Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
EAPI const Elm_Store *elm_store_item_store_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
EAPI const Elm_Genlist_Item *elm_store_item_genlist_item_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
+ /**
+ * @}
+ */
/**
* @defgroup SegmentControl SegmentControl
* @}
*/
+ /**
+ * @defgroup Controlbar Controlbar
+ * @ingroup Elementary
+ * @addtogroup Controlbar
+ * @{
+ *
+ * This is a Controlbar. It can contain label and icon objects.
+ * In edit mode, you can change the location of items.
+ */
+
/* Control Bar */
#define CONTROLBAR_SYSTEM_ICON_ALBUMS "controlbar_albums"
#define CONTROLBAR_SYSTEM_ICON_ARTISTS "controlbar_artists"
} Elm_Controlbar_Mode_Type;
typedef struct _Elm_Controlbar_Item Elm_Controlbar_Item;
+ /**
+ * Add a new controlbar object
+ *
+ * @param parent The parent object
+ * @return The new object or NULL if it cannot be created
+ */
EAPI Evas_Object *elm_controlbar_add(Evas_Object *parent);
+ /**
+ * Append new tab item
+ *
+ * @param obj The controlbar object
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param view The view of item
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_append(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
+ /**
+ * Prepend new tab item
+ *
+ * @param obj The controlbar object
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param view The view of item
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
+ /**
+ * Insert new tab item before given item
+ *
+ * @param obj The controlbar object
+ * @param before The given item
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param view The view of item
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, const char *icon_path, const char *label, Evas_Object *view);
+ /**
+ * Insert new tab item after given item
+ *
+ * @param obj The controlbar object
+ * @param after The given item
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param view The view of item
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, const char *icon_path, const char *label, Evas_Object *view);
+ /**
+ * Append new tool item
+ *
+ * @param obj The controlbar object
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param func Callback function of item
+ * @param data The data of callback function
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_append(Evas_Object *obj, const char *icon_path, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
+ /**
+ * Prepend new tool item
+ *
+ * @param obj The controlbar object
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param func Callback function of item
+ * @param data The data of callback function
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
+ /**
+ * Insert new tool item before given item
+ *
+ * @param obj The controlbar object
+ * @param before The given item
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param func Callback function of item
+ * @param data The data of callback function
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, const char *icon_path, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
+ /**
+ * Insert new tool item after given item
+ *
+ * @param obj The controlbar object
+ * @param after The given item
+ * @param icon_path The icon path of item
+ * @param label The label of item
+ * @param func Callback function of item
+ * @param data The data of callback function
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, const char *icon_path, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
+ /**
+ * Append new object item
+ *
+ * @param obj The controlbar object
+ * @param obj_item The object of item
+ * @param sel The number of sel occupied
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_object_item_append(Evas_Object *obj, Evas_Object *obj_item, const int sel);
+ /**
+ * Prepend new object item
+ *
+ * @param obj The controlbar object
+ * @param obj_item The object of item
+ * @param sel The number of sel occupied
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_object_item_prepend(Evas_Object *obj, Evas_Object *obj_item, const int sel);
+ /**
+ * Insert new object item before given item
+ *
+ * @param obj The controlbar object
+ * @param before The given item
+ * @param obj_item The object of item
+ * @param sel The number of sel occupied
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, Evas_Object *obj_item, const int sel);
+ /**
+ * Insert new object item after given item
+ *
+ * @param obj The controlbar object
+ * @param after The given item
+ * @param obj_item The object of item
+ * @param sel The number of sel occupied
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, Evas_Object *obj_item, const int sel);
+ /**
+ * Get the object of the object item
+ *
+ * @param it The item of controlbar
+ * @return The object of the object item
+ */
EAPI Evas_Object *elm_controlbar_object_item_object_get(const Elm_Controlbar_Item *it);
+ /**
+ * Delete item from controlbar
+ *
+ * @param it The item of controlbar
+ */
EAPI void elm_controlbar_item_del(Elm_Controlbar_Item *it);
+ /**
+ * Select item in controlbar
+ *
+ * @param it The item of controlbar
+ */
EAPI void elm_controlbar_item_select(Elm_Controlbar_Item *it);
+ /**
+ * Set the visible status of item in bar
+ *
+ * @param it The item of controlbar
+ * @param bar EINA_TRUE or EINA_FALSE
+ */
EAPI void elm_controlbar_item_visible_set(Elm_Controlbar_Item *it, Eina_Bool bar);
+ /**
+ * Get the result which or not item is visible in bar
+ *
+ * @param it The item of controlbar
+ * @return EINA_TRUE or EINA_FALSE
+ */
EAPI Eina_Bool elm_controlbar_item_visible_get(const Elm_Controlbar_Item * it);
+ /**
+ * Set item disable
+ *
+ * @param it The item of controlbar
+ * @param bar EINA_TRUE or EINA_FALSE
+ */
EAPI void elm_controlbar_item_disabled_set(Elm_Controlbar_Item * it, Eina_Bool disabled);
+ /**
+ * Get item disable
+ *
+ * @param it The item of controlbar
+ * @return EINA_TRUE or EINA_FALSE
+ */
EAPI Eina_Bool elm_controlbar_item_disabled_get(const Elm_Controlbar_Item * it);
+ /**
+ * Set the icon of item
+ *
+ * @param it The item of controlbar
+ * @param icon_path The icon path of the item
+ * @return The icon object
+ */
EAPI void elm_controlbar_item_icon_set(Elm_Controlbar_Item *it, const char *icon_path);
+ /**
+ * Get the icon of item
+ *
+ * @param it The item of controlbar
+ * @return The icon object
+ */
EAPI Evas_Object *elm_controlbar_item_icon_get(const Elm_Controlbar_Item *it);
+ /**
+ * Set the label of item
+ *
+ * @param it The item of controlbar
+ * @param label The label of item
+ */
EAPI void elm_controlbar_item_label_set(Elm_Controlbar_Item *it, const char *label);
+ /**
+ * Get the label of item
+ *
+ * @param it The item of controlbar
+ * @return The label of item
+ */
EAPI const char *elm_controlbar_item_label_get(const Elm_Controlbar_Item *it);
+ /**
+ * Get the selected item
+ *
+ * @param obj The controlbar object
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_selected_item_get(const Evas_Object *obj);
+ /**
+ * Get the first item
+ *
+ * @param obj The controlbar object
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_first_item_get(const Evas_Object *obj);
+ /**
+ * Get the last item
+ *
+ * @param obj The controlbar object
+ * @return The item of controlbar
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_last_item_get(const Evas_Object *obj);
+ /**
+ * Get the items
+ *
+ * @param obj The controlbar object
+ * @return The list of the items
+ */
EAPI const Eina_List *elm_controlbar_items_get(const Evas_Object *obj);
+ /**
+ * Get the previous item
+ *
+ * @param it The item of controlbar
+ * @return The previous item of the parameter item
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_item_prev(Elm_Controlbar_Item *it);
+ /**
+ * Get the next item
+ *
+ * @param obj The controlbar object
+ * @return The next item of the parameter item
+ */
EAPI Elm_Controlbar_Item *elm_controlbar_item_next(Elm_Controlbar_Item *it);
+ /**
+ * Set the view of the item
+ *
+ * @param it The item of controlbar
+ * @param view The view for the item
+ */
EAPI void elm_controlbar_item_view_set(Elm_Controlbar_Item *it, Evas_Object * view);
+ /**
+ * Get the view of the item
+ *
+ * @param it The item of controlbar
+ * @return The view for the item
+ */
EAPI Evas_Object *elm_controlbar_item_view_get(const Elm_Controlbar_Item *it);
+ /**
+ * Unset the view of the item
+ *
+ * @param it The item of controlbar
+ * @return The view for the item
+ */
EAPI Evas_Object *elm_controlbar_item_view_unset(Elm_Controlbar_Item *it);
+ /**
+ * Set the vertical mode of the controlbar
+ *
+ * @param obj The object of the controlbar
+ * @param vertical The vertical mode of the controlbar (TRUE = vertical, FALSE = horizontal)
+ */
EAPI Evas_Object *elm_controlbar_item_button_get(const Elm_Controlbar_Item *it);
+ /**
+ * Set the mode of the controlbar
+ *
+ * @param obj The object of the controlbar
+ * @param mode The mode of the controlbar
+ */
EAPI void elm_controlbar_mode_set(Evas_Object *obj, int mode);
+ /**
+ * Set the alpha of the controlbar
+ *
+ * @param obj The object of the controlbar
+ * @param alpha The alpha value of the controlbar (0-100)
+ */
EAPI void elm_controlbar_alpha_set(Evas_Object *obj, int alpha);
+ /**
+ * Set auto-align mode of the controlbar(It's not prepared yet)
+ * If you set the auto-align and add items more than 5,
+ * the "more" item will be made and the items more than 5 will be unvisible.
+ *
+ * @param obj The object of the controlbar
+ * @param auto_align The dicision that the controlbar use the auto-align
+ */
EAPI void elm_controlbar_item_auto_align_set(Evas_Object *obj, Eina_Bool auto_align);
+ /**
+ * Get the button object of the item
+ *
+ * @param it The item of controlbar
+ * @return button object of the item
+ */
EAPI void elm_controlbar_vertical_set(Evas_Object *obj, Eina_Bool vertical);
+ /**
+ * @}
+ */
+
+
+ /**
+ * @defgroup Searchbar Searchbar
+ * @addtogroup TickerNoti
+ * @{
+ * @ingroup Elementary
+ *
+ * This is Searchbar.
+ * It can contain a simple entry and button object.
+ */
- /* SearchBar */
+ /**
+ * Add a new searchbar to the parent
+ * @param parent The parent object
+ * @return The new object or NULL if it cannot be created
+ */
EAPI Evas_Object *elm_searchbar_add(Evas_Object *parent);
+ /**
+ * set the text of entry
+ *
+ * @param obj The searchbar object
+ * @return void
+ */
EAPI void elm_searchbar_text_set(Evas_Object *obj, const char *entry);
+ /**
+ * get the text of entry
+ *
+ * @param obj The searchbar object
+ * @return string pointer of entry
+ */
EAPI const char *elm_searchbar_text_get(Evas_Object *obj);
+ /**
+ * get the pointer of entry
+ *
+ * @param obj The searchbar object
+ * @return the entry object
+ */
EAPI Evas_Object *elm_searchbar_entry_get(Evas_Object *obj);
+ /**
+ * get the pointer of editfield
+ *
+ * @param obj The searchbar object
+ * @return the editfield object
+ */
EAPI Evas_Object *elm_searchbar_editfield_get(Evas_Object *obj);
+ /**
+ * set the cancel button animation flag
+ *
+ * @param obj The searchbar object
+ * @param cancel_btn_ani_flag The flag of animating cancen button or not
+ * @return void
+ */
EAPI void elm_searchbar_cancel_button_animation_set(Evas_Object *obj, Eina_Bool cancel_btn_ani_flag);
+ /**
+ * set the cancel button show mode
+ *
+ * @param obj The searchbar object
+ * @param visible The flag of cancen button show or not
+ * @return void
+ */
EAPI void elm_searchbar_cancel_button_set(Evas_Object *obj, Eina_Bool visible);
+ /**
+ * clear searchbar status
+ *
+ * @param obj The searchbar object
+ * @return void
+ */
EAPI void elm_searchbar_clear(Evas_Object *obj);
+ /**
+ * set the searchbar boundary rect mode(with bg rect) set
+ *
+ * @param obj The searchbar object
+ * @param boundary The present flag of boundary rect or not
+ * @return void
+ */
EAPI void elm_searchbar_boundary_rect_set(Evas_Object *obj, Eina_Bool boundary);
+ /**
+ * @}
+ */
EAPI Evas_Object *elm_page_control_add(Evas_Object *parent);
EAPI void elm_page_control_page_count_set(Evas_Object *obj, unsigned int page_count);
EAPI void elm_nocontents_custom_set(const Evas_Object *obj, Evas_Object *custom);
EAPI Evas_Object *elm_nocontents_custom_get(const Evas_Object *obj);
- /* TickerNoti */
+ /**
+ * @defgroup TickerNoti TickerNoti
+ * @addtogroup TickerNoti
+ * @{
+ *
+ * This is a notification widget which can be used to display some short information.
+ *
+ * Parts which can be used with elm_object_text_part_set() and
+ * elm_object_text_part_get():
+ *
+ * @li NULL/"default" - Operates on tickernoti content-text
+ *
+ * Parts which can be used with elm_object_content_part_set(),
+ * elm_object_content_part_get() and elm_object_content_part_unset():
+ *
+ * @li "icon" - Operates on tickernoti's icon
+ * @li "button" - Operates on tickernoti's button
+ *
+ * smart callbacks called:
+ * @li "clicked" - emitted when tickernoti is clicked, except at the
+ * swallow/button region, if any.
+ * @li "hide" - emitted when the tickernoti is completely hidden. In case of
+ * any hide animation, this signal is emitted after the animation.
+ */
typedef enum
{
ELM_TICKERNOTI_ORIENT_TOP = 0,
ELM_TICKERNOTI_ORIENT_LAST
} Elm_Tickernoti_Orient;
+ /**
+ * Add a tickernoti object to @p parent
+ *
+ * @param parent The parent object
+ *
+ * @return The tickernoti object, or NULL upon failure
+ */
EAPI Evas_Object *elm_tickernoti_add (Evas_Object *parent);
+ /**
+ * Set the orientation of the tickernoti object
+ *
+ * @param obj The tickernoti object
+ * @param orient The orientation of tickernoti object
+ */
EAPI void elm_tickernoti_orient_set (Evas_Object *obj, Elm_Tickernoti_Orient orient) EINA_ARG_NONNULL(1);
+ /**
+ * Get the orientation of the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The orientation of tickernotil object
+ */
EAPI Elm_Tickernoti_Orient elm_tickernoti_orient_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Get the rotation of tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The rotation angle
+ */
EAPI int elm_tickernoti_rotation_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the rotation angle for the tickernoti object
+ *
+ * @param obj The tickernoti object
+ * @param angle The rotation angle(in degree) will be used on the tickernoti object
+ */
EAPI void elm_tickernoti_rotation_set (Evas_Object *obj, int angle) EINA_ARG_NONNULL(1);
+ /**
+ * Get the view window(elm_win) on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return internal view window(elm_win) object
+ */
EAPI Evas_Object *elm_tickernoti_win_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
/* #### Below APIs and data structures are going to be deprecated, announcment will be made soon ####*/
+ /**
+ * @deprecated
+ */
typedef enum
{
ELM_TICKERNOTI_DEFAULT,
ELM_TICKERNOTI_DETAILVIEW
} Elm_Tickernoti_Mode;
- EAPI void elm_tickernoti_detailview_label_set (Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
- EAPI const char *elm_tickernoti_detailview_label_get (const Evas_Object *obj)EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_detailview_button_set (Evas_Object *obj, Evas_Object *button) EINA_ARG_NONNULL(2);
- EAPI Evas_Object *elm_tickernoti_detailview_button_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_detailview_icon_set (Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
- EAPI Evas_Object *elm_tickernoti_detailview_icon_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI Evas_Object *elm_tickernoti_detailview_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_mode_set (Evas_Object *obj, Elm_Tickernoti_Mode mode) EINA_ARG_NONNULL(1);
- EAPI Elm_Tickernoti_Mode elm_tickernoti_mode_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_orientation_set (Evas_Object *obj, Elm_Tickernoti_Orient orient) EINA_ARG_NONNULL(1);
- EAPI Elm_Tickernoti_Orient elm_tickernoti_orientation_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_label_set (Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
- EAPI const char *elm_tickernoti_label_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_icon_set (Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
- EAPI Evas_Object *elm_tickernoti_icon_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_tickernoti_button_set (Evas_Object *obj, Evas_Object *button) EINA_ARG_NONNULL(1);
- EAPI Evas_Object *elm_tickernoti_button_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
- /* ############################################################################### */
- /*
- * Parts which can be used with elm_object_text_part_set() and
- * elm_object_text_part_get():
+ /**
+ * Set the detail label on the tickernoti object
*
- * @li NULL/"default" - Operates on tickernoti content-text
+ * @param obj The tickernoti object
+ * @param label The label will be used on the tickernoti object
+ * @deprecated use elm_object_text_set() instead
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_detailview_label_set (Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
+ /**
+ * Get the detail label used on the tickernoti object
*
- * Parts which can be used with elm_object_content_part_set(),
- * elm_object_content_part_get() and elm_object_content_part_unset():
+ * @param obj The tickernotil object
+ * @return The string inside the label
+ * @deprecated use elm_object_text_get() instead
+ */
+ WILL_DEPRECATE EAPI const char *elm_tickernoti_detailview_label_get (const Evas_Object *obj)EINA_ARG_NONNULL(1);
+ /**
+ * Set the button object used on the tickernoti object
*
- * @li "icon" - Operates on tickernoti's icon
- * @li "button" - Operates on tickernoti's button
+ * @param obj The tickernotil object
+ * @param button The button object will be used on the tickernoti object
+ * @deprecated use elm_object_content_part_set() instead with "icon" as part name
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_detailview_button_set (Evas_Object *obj, Evas_Object *button) EINA_ARG_NONNULL(2);
+ /**
+ * Get the button object used on the tickernoti object
*
- * smart callbacks called:
- * @li "clicked" - emitted when tickernoti is clicked, except at the
- * swallow/button region, if any.
- * @li "hide" - emitted when the tickernoti is completely hidden. In case of
- * any hide animation, this signal is emitted after the animation.
+ * @param obj The tickernotil object
+ * @return The button object inside the tickernoti
+ * @deprecated use elm_object_content_part_get() instead with "button" as part name
+ */
+ WILL_DEPRECATE EAPI Evas_Object *elm_tickernoti_detailview_button_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the detail icon object used on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @param icon The icon object will be used on the tickernoti object
+ * @deprecated use elm_object_content_part_set() instead with "icon" as part name
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_detailview_icon_set (Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
+ /**
+ * Get the detail icon object used on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The icon object inside the tickernoti
+ * @deprecated use elm_object_content_part_get() instead with "icon" as part name
+ */
+ WILL_DEPRECATE EAPI Evas_Object *elm_tickernoti_detailview_icon_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Get the view mode on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The view mode
+ * @deprecated removed as now styles are used instead
+ */
+ WILL_DEPRECATE EAPI Evas_Object *elm_tickernoti_detailview_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the view mode used on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @param mode The view mode will be used on the tickernoti object
+ * @deprecated removed as now styles are used instead
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_mode_set (Evas_Object *obj, Elm_Tickernoti_Mode mode) EINA_ARG_NONNULL(1);
+ /**
+ * Get the detail view window(elm_win) on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return detail view window(elm_win) object
+ */
+ WILL_DEPRECATE EAPI Elm_Tickernoti_Mode elm_tickernoti_mode_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the orientation of the tickernoti object
+ *
+ * @param obj The tickernoti object
+ * @param orient The orientation of tickernoti object
+ * @deprecated use elm_tickernoti_orient_set() instead
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_orientation_set (Evas_Object *obj, Elm_Tickernoti_Orient orient) EINA_ARG_NONNULL(1);
+ /**
+ * Get the orientation of the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The orientation of tickernotil object
+ * @deprecated use elm_tickernoti_orient_get() instead
+ */
+ WILL_DEPRECATE EAPI Elm_Tickernoti_Orient elm_tickernoti_orientation_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the label on the tickernoti object
+ *
+ * @param obj The tickernoti object
+ * @param label The label will be used on the tickernoti object
+ * @deprecated use elm_object_text_get()
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_label_set (Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
+ /**
+ * Get the label used on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The string inside the label
+ * @deprecated use elm_object_text_get() instead
+ */
+ WILL_DEPRECATE EAPI const char *elm_tickernoti_label_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the icon object of the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @param icon The icon object will be used on the tickernoti object
+ * @deprecated use elm_object_content_part_set() instead with "icon" as part name
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_icon_set (Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
+ /**
+ * Get the icon object of the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The icon object inside the tickernoti
+ * @deprecated use elm_object_content_part_get() instead with "icon" as part name
+ */
+ WILL_DEPRECATE EAPI Evas_Object *elm_tickernoti_icon_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Set the action button object used on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @param button The button object will be used on the tickernoti object
+ * @deprecated use elm_object_content_part_set() instead with "button" as part name
+ */
+ WILL_DEPRECATE EAPI void elm_tickernoti_button_set (Evas_Object *obj, Evas_Object *button) EINA_ARG_NONNULL(1);
+ /**
+ * Get the action button object used on the tickernoti object
+ *
+ * @param obj The tickernotil object
+ * @return The button object inside the tickernoti
+ * @deprecated use elm_object_content_part_get() instead with "button" as part name
+ */
+ WILL_DEPRECATE EAPI Evas_Object *elm_tickernoti_button_get (const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * @}
*/
- /* colorpalette */
+ /**
+ * @defgroup Colorpalette Colorpalette
+ * @ingroup Elementary
+ * @addtogroup Colorpalette
+ * @{
+ *
+ * Using colorpalette, you can select a color by clicking
+ * a color rectangle on the colorpalette.
+ *
+ * Smart callbacks that you can add are:
+ *
+ * clicked - This signal is sent when a color rectangle is clicked.
+ */
typedef struct _Colorpalette_Color Elm_Colorpalette_Color;
-
struct _Colorpalette_Color
{
unsigned int r, g, b;
};
+ /**
+ * Add a new colorpalette to the parent.
+ *
+ * @param parent The parent object
+ * @return The new object or NULL if it cannot be created
+ *
+ * @ingroup Colorpalette
+ */
EAPI Evas_Object *elm_colorpalette_add(Evas_Object *parent);
+ /**
+ * Set colors to the colorpalette.
+ *
+ * @param obj Colorpalette object
+ * @param color_num number of the colors on the colorpalette
+ * @param color Color lists
+ */
EAPI void elm_colorpalette_color_set(Evas_Object *obj, int color_num, Elm_Colorpalette_Color *color);
+ /**
+ * Set row/column value for the colorpalette.
+ *
+ * @param obj Colorpalette object
+ * @param row row value for the colorpalette
+ * @param col column value for the colorpalette
+ */
EAPI void elm_colorpalette_row_column_set(Evas_Object *obj, int row, int col);
- /* smart callbacks called:
- * "clicked" - when image clicked
+
+ /**
+ * @}
*/
/* editfield */
*
* @param parent The parent object
* @return The new object or NULL if it cannot be created
- *
- * @ingroup Multibuttonentry
*/
EAPI Evas_Object *elm_multibuttonentry_add(Evas_Object *parent);
/**
*
* @param obj The multibuttonentry object
* @return The label, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI const char *elm_multibuttonentry_label_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @param label The text label string
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_label_set(Evas_Object *obj, const char *label);
/**
*
* @param obj The multibuttonentry object
* @return The entry object, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI Evas_Object *elm_multibuttonentry_entry_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @return The guide text, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI const char * elm_multibuttonentry_guide_text_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @param label The guide text string
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_guide_text_set(Evas_Object *obj, const char *guidetext);
/**
*
* @param obj The multibuttonentry object
* @param the value of shrink mode state.
- *
- * @ingroup Multibuttonentry
*/
EAPI int elm_multibuttonentry_contracted_state_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @param the value of shrink_mode state. set this to 1 to set the multibuttonentry to shrink state of single line. set this to 0 to unset the contracted state.
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_contracted_state_set(Evas_Object *obj, int contracted);
/**
* @param label The label of new item
* @param data The ponter to the data to be attached
* @return A handle to the item added or NULL if not possible
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_start(Evas_Object *obj, const char *label, void *data);
/**
* @param label The label of new item
* @param data The ponter to the data to be attached
* @return A handle to the item added or NULL if not possible
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_end(Evas_Object *obj, const char *label, void *data);
/**
* @param label The label of new item
* @param data The ponter to the data to be attached
* @return A handle to the item added or NULL if not possible
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_before(Evas_Object *obj, const char *label, Elm_Multibuttonentry_Item *before, void *data);
/**
* @param label The label of new item
* @param data The ponter to the data to be attached
* @return A handle to the item added or NULL if not possible
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_after(Evas_Object *obj, const char *label, Elm_Multibuttonentry_Item *after, void *data);
/**
*
* @param obj The multibuttonentry object
* @return The list of items, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI const Eina_List *elm_multibuttonentry_items_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @return The first item, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_first_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @return The last item, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_last_get(const Evas_Object *obj);
/**
*
* @param obj The multibuttonentry object
* @return The selected item, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_selected_get(const Evas_Object *obj);
/**
*
* @param item The item
* @param selected if it's EINA_TRUE, select the item otherwise, unselect the item
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_item_selected_set(Elm_Multibuttonentry_Item *item);
/**
* unselect all of items.
*
* @param obj The multibuttonentry object
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_item_unselect_all(Evas_Object *obj);
/**
* Delete a given item
*
* @param item The item
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_item_del(Elm_Multibuttonentry_Item *item);
/**
* Remove all items in the multibuttonentry.
*
* @param obj The multibuttonentry object
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_items_del(Evas_Object *obj);
/**
*
* @param item The item
* @return The label of a given item, or NULL if none
- *
- * @ingroup Multibuttonentry
*/
EAPI const char *elm_multibuttonentry_item_label_get(const Elm_Multibuttonentry_Item *item);
/**
*
* @param item The item
* @param label The text label string
- *
- * @ingroup Multibuttonentry
*/
EAPI void elm_multibuttonentry_item_label_set(Elm_Multibuttonentry_Item *item, const char *str);
/**
*
* @param item The item
* @return The item before the item @p item
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_prev(Elm_Multibuttonentry_Item *item);
/**
*
* @param item The item
* @return The item after the item @p item
- *
- * @ingroup Multibuttonentry
*/
EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_next(Elm_Multibuttonentry_Item *item);
* @}
*/
- /* available styles:
+ /**
+ * @defgroup Stackedicon Stackedicon
+ * @ingroup Elementary
+ * @addtogroup Stackedicon
+ * @{
+ *
+ * This is a Stackedicon.
+ * smart callback called:
+ * "expanded" - This signal is emitted when a stackedicon is expanded.
+ * "clicked" - This signal is emitted when a stackedicon is clicked.
+ *
+ * available styles:
* default
*/
-
- /* stackedicon */
typedef struct _Stackedicon_Item Elm_Stackedicon_Item;
+ /**
+ * Add a new stackedicon to the parent
+ *
+ * @param parent The parent object
+ * @return The new object or NULL if it cannot be created
+ */
EAPI Evas_Object *elm_stackedicon_add(Evas_Object *parent);
+ /**
+ * This appends a path to the stackedicon
+ *
+ * @param obj The stackedicon object
+ * @param path The image full path
+ * @return The new item or NULL if it cannot be created
+ */
EAPI Elm_Stackedicon_Item *elm_stackedicon_item_append(Evas_Object *obj, const char *path);
+ /**
+ * This prepends a path to the stackedicon
+ *
+ * @param obj The stackedicon object
+ * @param path The image full path
+ * @return The new item or NULL if it cannot be created
+ */
EAPI Elm_Stackedicon_Item *elm_stackedicon_item_prepend(Evas_Object *obj, const char *path);
+ /**
+ * This delete a path at the stackedicon
+ *
+ * @param Elm_Stackedicon_Item The delete item
+ */
EAPI void elm_stackedicon_item_del(Elm_Stackedicon_Item *it);
- EAPI Eina_List *elm_stackedicon_item_list_get(Evas_Object *obj);
- /* smart callback called:
- * "expanded" - This signal is emitted when a stackedicon is expanded.
- * "clicked" - This signal is emitted when a stackedicon is clicked.
+ /**
+ * Get item list from the stackedicon
+ *
+ * @param obj The stackedicon object
+ * @return The item list or NULL if it cannot be created
*/
- /* available styles:
- * default
+ EAPI Eina_List *elm_stackedicon_item_list_get(Evas_Object *obj);
+ /**
+ * @}
*/
+
/* dialoguegroup */
typedef struct _Dialogue_Item Dialogue_Item;
EAPI Eina_Bool elm_dayselector_check_state_get(Evas_Object *obj, Elm_DaySelector_Day day);
EAPI void elm_dayselector_check_state_set(Evas_Object *obj, Elm_DaySelector_Day day, Eina_Bool checked);
- /* Image Slider */
+ /**
+ * @defgroup Imageslider Imageslider
+ * @ingroup Elementary
+ * @addtogroup Imageslider
+ * @{
+ *
+ * By flicking images on the screen,
+ * you can see the images in specific path.
+ */
typedef struct _Imageslider_Item Elm_Imageslider_Item;
typedef void (*Elm_Imageslider_Cb)(void *data, Evas_Object *obj, void *event_info);
+
+ /**
+ * Add an Image Slider widget
+ *
+ * @param parent The parent object
+ * @return The new Image slider object or NULL if it cannot be created
+ */
EAPI Evas_Object *elm_imageslider_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
+ /**
+ * Append an Image Slider item
+ *
+ * @param obj The Image Slider object
+ * @param photo_file photo file path
+ * @param func callback function
+ * @param data callback data
+ * @return The Image Slider item handle or NULL
+ */
EAPI Elm_Imageslider_Item *elm_imageslider_item_append(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Insert an Image Slider item into the Image Slider Widget by using the given index.
+ *
+ * @param obj The Image Slider object
+ * @param photo_file photo file path
+ * @param func callback function
+ * @param index required position
+ * @param data callback data
+ * @return The Image Slider item handle or NULL
+ */
EAPI Elm_Imageslider_Item *elm_imageslider_item_append_relative(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, unsigned int index, void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Prepend Image Slider item
+ *
+ * @param obj The Image Slider object
+ * @param photo_file photo file path
+ * @param func callback function
+ * @param data callback data
+ * @return The imageslider item handle or NULL
+ */
EAPI Elm_Imageslider_Item *elm_imageslider_item_prepend(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data) EINA_ARG_NONNULL(1);
+ /**
+ * Delete the selected Image Slider item
+ *
+ * @param it The selected Image Slider item handle
+ */
EAPI void elm_imageslider_item_del(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Get the selected Image Slider item
+ *
+ * @param obj The Image Slider object
+ * @return The selected Image Slider item or NULL
+ */
EAPI Elm_Imageslider_Item *elm_imageslider_selected_item_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Get whether an Image Slider item is selected or not
+ *
+ * @param it the selected Image Slider item
+ * @return EINA_TRUE or EINA_FALSE
+ */
EAPI Eina_Bool elm_imageslider_item_selected_get(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Set the selected Image Slider item
+ *
+ * @param it The Imaga Slider item
+ */
EAPI void elm_imageslider_item_selected_set(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Get the photo file path of given Image Slider item
+ *
+ * @param it The Image Slider item
+ * @return The photo file path or NULL;
+ */
EAPI const char *elm_imageslider_item_photo_file_get(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Sets the photo file path of given Image Slider item
+ *
+ * @param it The Image Slider item
+ * @param photo_file The photo file path or NULL;
+ */
EAPI Elm_Imageslider_Item *elm_imageslider_item_prev(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Get the previous Image Slider item
+ *
+ * @param it The Image Slider item
+ * @return The previous Image Slider item or NULL
+ */
EAPI Elm_Imageslider_Item *elm_imageslider_item_next(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * Get the next Image Slider item
+ *
+ * @param it The Image Slider item
+ * @return The next Image Slider item or NULL
+ */
EAPI void elm_imageslider_prev(Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Move to the previous Image Slider item
+ *
+ * @param obj The Image Slider object
+ */
EAPI void elm_imageslider_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /**
+ * Move to the next Image Slider item
+ *
+ * @param obj The Image Slider object
+ */
EAPI void elm_imageslider_item_photo_file_set(Elm_Imageslider_Item *it, const char *photo_file) EINA_ARG_NONNULL(1,2);
+ /**
+ * Updates an Image Slider item
+ *
+ * @param it The Image Slider item
+ */
EAPI void elm_imageslider_item_update(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
+ /**
+ * @}
+ */
#ifdef __cplusplus
}
#endif
elm_popup.c \
elm_progressbar.c \
elm_radio.c \
+elm_route.c \
elm_scroller.c \
elm_searchbar.c \
elm_segment_control.c \
els_pan.h \
els_scroller.c \
els_scroller.h \
-els_tooltip.c
+els_tooltip.c \
+elu_ews_wm.c
libelementary_la_CFLAGS =
libelementary_la_LIBADD = \
static void
_content_set_hook(Evas_Object *obj, const char *part, Evas_Object *content)
{
- if (!part || strcmp(part, "video")) return;
+ if (part && strcmp(part, "video")) return;
#ifdef HAVE_EMOTION
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd;
- if (!part || strcmp(part, "overlay")) return;
+ if (part && strcmp(part, "overlay")) return;
wd = elm_widget_data_get(obj);
if (!wd) return;
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
- if (!part || strcmp(part, "overlay")) return NULL;
+ if (part && strcmp(part, "overlay")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
return wd->overlay;
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
Evas_Object *overlay;
- if (!part || strcmp(part, "overlay")) return NULL;
+ if (part && strcmp(part, "overlay")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd || !wd->overlay) return NULL;
overlay = wd->overlay;
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd;
- if (strcmp(part, "icon")) return;
+ if (part && strcmp(part, "icon")) return;
wd = elm_widget_data_get(obj);
if (!wd) return;
if (wd->icon == content) return;
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
- if (strcmp(part, "icon")) return NULL;
+ if (part && strcmp(part, "icon")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
return wd->icon;
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
- if (strcmp(part, "icon")) return NULL;
+ if (part && strcmp(part, "icon")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
if (!wd->icon) return NULL;
char *insertStr = str;
// if entry has text only set then remove item tags
- if (elm_entry_cnp_textonly_get(entry))
+ if (elm_entry_cnp_mode_get(entry) != ELM_CNP_MODE_MARKUP)
{
while (EINA_TRUE)
{
if (!pi) return EINA_FALSE;
if (!entry) return EINA_FALSE;
- if (elm_entry_cnp_textonly_get(entry)) return EINA_FALSE;
+ if (elm_entry_cnp_mode_get(entry) != ELM_CNP_MODE_MARKUP) return EINA_FALSE;
pasteimage_provider_set(entry);
#include "elm_priv.h"
#include <Ecore.h>
-/**
- * @defgroup Colorpalette Colorpalette
- * @ingroup Elementary
- *
- * Using colorpalette, you can select a color by clicking
- * a color rectangle on the colorpalette.
- *
- * Smart callbacks that you can add are:
- *
- * clicked - This signal is sent when a color rectangle is clicked.
- *
- */
-
#define MAX_NUM_COLORS 30
typedef struct _Colorpalette_Item Colorpalette_Item;
*b = (*b * 0xff) / 255;
}
-/**
- * Add a new colorpalette to the parent.
- *
- * @param parent The parent object
- * @return The new object or NULL if it cannot be created
- *
- * @ingroup Colorpalette
- */
EAPI Evas_Object *elm_colorpalette_add(Evas_Object *parent)
{
Evas_Object *obj = NULL;
}
-/**
- * Set colors to the colorpalette.
- *
- * @param obj Colorpalette object
- * @param color_num number of the colors on the colorpalette
- * @param color Color lists
- *
- * @ingroup Colorpalette
- */
EAPI void elm_colorpalette_color_set(Evas_Object *obj, int color_num, Elm_Colorpalette_Color *color)
{
ELM_CHECK_WIDTYPE(obj, widtype);
_sizing_eval(obj);
}
-/**
- * Set row/column value for the colorpalette.
- *
- * @param obj Colorpalette object
- * @param row row value for the colorpalette
- * @param col column value for the colorpalette
- *
- * @ingroup Colorpalette
- */
EAPI void elm_colorpalette_row_column_set(Evas_Object *obj, int row, int col)
{
ELM_CHECK_WIDTYPE(obj, widtype);
-/**
- * @defgroup Controlbar Controlbar
- * @ingroup Elementary
- *
- * This is a Controlbar. It can contain label and icon objects.
- * In edit mode, you can change the location of items.
- */
-
#include <string.h>
#include <math.h>
};
static const char *widtype = NULL;
-// prototype
+
static void _sizing_eval(Evas_Object * obj);
static int _check_bar_item_number(Widget_Data *wd);
static void _select_box(Elm_Controlbar_Item * it);
static void _check_toolbar_line(Widget_Data *wd);
static Eina_Bool _press_box(Elm_Controlbar_Item * it);
-///////////////////////////////////////////////////////////////////
-//
-// Smart Object basic function
-//
-////////////////////////////////////////////////////////////////////
-
static void
_controlbar_move(void *data, Evas_Object * obj __UNUSED__)
{
Widget_Data * wd = elm_widget_data_get(obj);
if (!wd) return;
elm_layout_theme_set(wd->edje, "controlbar", "base",
- elm_widget_style_get(obj));
+ elm_widget_style_get(obj));
elm_layout_theme_set(wd->bg, "controlbar", "background",
- elm_widget_style_get(obj));
+ elm_widget_style_get(obj));
evas_object_color_get(wd->bg, &r, &g, &b, NULL);
evas_object_color_set(wd->bg, r, g, b, (int)(255 * wd->alpha / 100));
EINA_LIST_FOREACH(wd->items, l, item)
_controlbar_resize(obj, obj);
}
-/////////////////////////////////////////////////////////////
-//
-// animation function
-//
-/////////////////////////////////////////////////////////////
-
static Eina_Bool
_move_evas_object(void *data)
{
return ad;
}
-/////////////////////////////////////////////////////////////
-//
-// callback function
-//
-/////////////////////////////////////////////////////////////
-
static int
_sort_cb(const void *d1, const void *d2)
{
return item1->order > item2->order ? 1 : -1;
}
-///////////////////////////////////////////////////////////////////
-//
-// basic utility function
-//
-////////////////////////////////////////////////////////////////////
-
static Eina_Bool
_check_item(Widget_Data *wd, Elm_Controlbar_Item *item)
{
if (!wd->items) return EINA_FALSE;
EINA_LIST_FOREACH(wd->items, l, it)
- if (it == item) return EINA_TRUE;
+ if (it == item) return EINA_TRUE;
return EINA_FALSE;
}
wd->ad = NULL;
}
wd->ad = _move_object_with_animation(wd->edje, fx, fy, fw, fh, tx, ty, tw, th,
- 0.3, _move_evas_object, _end_selected_box, wd);
+ 0.3, _move_evas_object, _end_selected_box, wd);
}
static void
}
static Elm_Controlbar_Item *
-_create_object_item(Evas_Object * obj, Evas_Object * obj_item, const int sel)
+_create_object_item(Evas_Object *obj, Evas_Object *obj_item, const int sel)
{
- Elm_Controlbar_Item * it;
+ Elm_Controlbar_Item *it;
Widget_Data * wd;
if (obj == NULL)
{
}
static void
-_set_items_position(Evas_Object * obj, Elm_Controlbar_Item * it,
- Elm_Controlbar_Item * mit, Eina_Bool bar)
+_set_items_position(Evas_Object *obj, Elm_Controlbar_Item *it,
+ Elm_Controlbar_Item *mit, Eina_Bool bar)
{
Widget_Data * wd;
const Eina_List *l;
return list;
}
-static void _ctxpopup_cb(void *data, Evas_Object *obj, void *event_info)
+static void
+_ctxpopup_cb(void *data, Evas_Object *obj, void *event_info)
{
Elm_Controlbar_Item *it;
const Eina_List *l;
ctxpopup = NULL;
}
-static void _ctxpopup_dismissed_cb(void *data __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
+static void
+_ctxpopup_dismissed_cb(void *data __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
{
Evas_Object *ctxpopup = obj;
return it;
}
-///////////////////////////////////////////////////////////////////
-//
-// API function
-//
-////////////////////////////////////////////////////////////////////
-
-/**
- * Add a new controlbar object
- *
- * @param parent The parent object
- * @return The new object or NULL if it cannot be created
- *
- * @ingroup Controlbar
- */
-EAPI Evas_Object * elm_controlbar_add(Evas_Object * parent)
+EAPI Evas_Object *
+elm_controlbar_add(Evas_Object *parent)
{
if (parent == NULL) return NULL;
Evas_Object * obj = NULL;
return obj;
}
-/**
- * Append new tab item
- *
- * @param obj The controlbar object
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param view The view of item
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_tab_item_append(Evas_Object * obj,
- const char
- *icon_path,
- const char *label,
- Evas_Object *
- view)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_tab_item_append(Evas_Object *obj, const char *icon_path,
+ const char *label, Evas_Object *view)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Elm_Controlbar_Item * it;
_create_more_item(wd, TABBAR);
}
_set_items_position(obj, it, NULL, EINA_FALSE);
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, NULL, EINA_TRUE);
- }
+ }
wd->items = eina_list_append(wd->items, it);
if (wd->more_item)
elm_controlbar_item_view_set(wd->more_item, _create_more_view(wd));
return it;
}
-/**
- * Prepend new tab item
- *
- * @param obj The controlbar object
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param view The view of item
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_tab_item_prepend(Evas_Object *
- obj,
- const char
- *icon_path,
- const char
- *label,
- Evas_Object *
- view)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_tab_item_prepend(Evas_Object *obj, const char *icon_path,
+ const char *label, Evas_Object *view)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd;
item = eina_list_data_get(wd->items);
if ((_check_bar_item_number(wd) >= 5) && (wd->auto_align))
{
- if (!wd->more_item) {
+ if (!wd->more_item)
+ {
lit = elm_controlbar_last_item_get(obj);
_set_item_visible(lit, EINA_FALSE);
_create_more_item(wd, TABBAR);
- }
+ }
lit = elm_controlbar_item_prev(wd->more_item);
_set_item_visible(lit, EINA_FALSE);
_set_items_position(obj, it, item, EINA_TRUE);
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, item, EINA_TRUE);
- }
+ }
wd->items = eina_list_prepend(wd->items, it);
if (wd->more_item)
elm_controlbar_item_view_set(wd->more_item, _create_more_view(wd));
return it;
}
-/**
- * Insert new tab item before given item
- *
- * @param obj The controlbar object
- * @param before The given item
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param view The view of item
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
EAPI Elm_Controlbar_Item *
-elm_controlbar_tab_item_insert_before(Evas_Object * obj,
- Elm_Controlbar_Item * before,
+elm_controlbar_tab_item_insert_before(Evas_Object *obj,
+ Elm_Controlbar_Item *before,
const char *icon_path,
- const char *label, Evas_Object * view)
+ const char *label, Evas_Object *view)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd;
{
_set_items_position(obj, it, before, EINA_FALSE);
}
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, before, EINA_TRUE);
- }
+ }
wd->items = eina_list_prepend_relative(wd->items, it, before);
if (wd->more_item)
elm_controlbar_item_view_set(wd->more_item, _create_more_view(wd));
return it;
}
-/**
- * Insert new tab item after given item
- *
- * @param obj The controlbar object
- * @param after The given item
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param view The view of item
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
EAPI Elm_Controlbar_Item *
-elm_controlbar_tab_item_insert_after(Evas_Object * obj,
- Elm_Controlbar_Item * after,
+elm_controlbar_tab_item_insert_after(Evas_Object *obj,
+ Elm_Controlbar_Item *after,
const char *icon_path, const char *label,
Evas_Object * view)
{
{
_set_items_position(obj, it, NULL, EINA_FALSE);
}
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, item, EINA_TRUE);
- }
+ }
wd->items = eina_list_append_relative(wd->items, it, after);
if (wd->more_item)
elm_controlbar_item_view_set(wd->more_item, _create_more_view(wd));
return it;
}
-/**
- * Append new tool item
- *
- * @param obj The controlbar object
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param func Callback function of item
- * @param data The data of callback function
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_tool_item_append(Evas_Object *
- obj,
- const char
- *icon_path,
- const char
- *label,
- void (*func)
- (void *data,
- Evas_Object *
- obj,
- void
- *event_info),
- void *data)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_tool_item_append(Evas_Object *obj, const char *icon_path,
+ const char *label,
+ void (*func)(void *data, Evas_Object * obj, void *event_info),
+ void *data)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
wd = elm_widget_data_get(obj);
if ((_check_bar_item_number(wd) >= 5) && (wd->auto_align))
{
- if (!wd->more_item) {
+ if (!wd->more_item)
+ {
lit = elm_controlbar_last_item_get(obj);
_set_item_visible(lit, EINA_FALSE);
_create_more_item(wd, TOOLBAR);
- }
+ }
_set_items_position(obj, it, NULL, EINA_FALSE);
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, NULL, EINA_TRUE);
- }
+ }
wd->items = eina_list_append(wd->items, it);
_check_toolbar_line(wd);
_sizing_eval(obj);
return it;
}
-/**
- * Prepend new tool item
- *
- * @param obj The controlbar object
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param func Callback function of item
- * @param data The data of callback function
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_tool_item_prepend(Evas_Object *
- obj,
- const char
- *icon_path,
- const char
- *label,
- void (*func)
- (void
- *data,
- Evas_Object *
- obj,
- void
- *event_info),
- void
- *data)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_tool_item_prepend(Evas_Object *obj, const char *icon_path,
+ const char *label,
+ void (*func) (void *data, Evas_Object *obj, void *event_info),
+ void *data)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd;
item = eina_list_data_get(wd->items);
if ((_check_bar_item_number(wd) >= 5) && (wd->auto_align))
{
- if (!wd->more_item) {
+ if (!wd->more_item)
+ {
lit = elm_controlbar_last_item_get(obj);
_set_item_visible(lit, EINA_FALSE);
_create_more_item(wd, TOOLBAR);
- }
+ }
lit = elm_controlbar_item_prev(wd->more_item);
_set_item_visible(lit, EINA_FALSE);
_set_items_position(obj, it, item, EINA_TRUE);
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, item, EINA_TRUE);
- }
+ }
wd->items = eina_list_prepend(wd->items, it);
_check_toolbar_line(wd);
_sizing_eval(obj);
return it;
}
-/**
- * Insert new tool item before given item
- *
- * @param obj The controlbar object
- * @param before The given item
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param func Callback function of item
- * @param data The data of callback function
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
EAPI Elm_Controlbar_Item *
-elm_controlbar_tool_item_insert_before(Evas_Object * obj,
- Elm_Controlbar_Item * before,
+elm_controlbar_tool_item_insert_before(Evas_Object *obj,
+ Elm_Controlbar_Item *before,
const char *icon_path,
const char *label,
- void (*func) (void *data,
- Evas_Object * obj,
- void *event_info),
+ void (*func)(void *data, Evas_Object *obj, void *event_info),
void *data)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
{
_set_items_position(obj, it, before, EINA_FALSE);
}
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, before, EINA_TRUE);
- }
+ }
wd->items = eina_list_prepend_relative(wd->items, it, before);
_check_toolbar_line(wd);
_sizing_eval(obj);
return it;
}
-/**
- * Insert new tool item after given item
- *
- * @param obj The controlbar object
- * @param after The given item
- * @param icon_path The icon path of item
- * @param label The label of item
- * @param func Callback function of item
- * @param data The data of callback function
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
EAPI Elm_Controlbar_Item *
-elm_controlbar_tool_item_insert_after(Evas_Object * obj,
- Elm_Controlbar_Item * after,
+elm_controlbar_tool_item_insert_after(Evas_Object *obj,
+ Elm_Controlbar_Item *after,
const char *icon_path,
const char *label,
- void (*func) (void *data,
- Evas_Object * obj,
- void *event_info),
+ void (*func) (void *data, Evas_Object *obj, void *event_info),
void *data)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
{
_set_items_position(obj, it, NULL, EINA_FALSE);
}
- }
- else{
+ }
+ else
+ {
_set_items_position(obj, it, item, EINA_TRUE);
- }
+ }
wd->items = eina_list_append_relative(wd->items, it, after);
_check_toolbar_line(wd);
_sizing_eval(obj);
return it;
}
-/**
- * Append new object item
- *
- * @param obj The controlbar object
- * @param obj_item The object of item
- * @param sel The number of sel occupied
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_object_item_append(Evas_Object *
- obj,
- Evas_Object *
- obj_item,
- const int sel)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_object_item_append(Evas_Object *obj, Evas_Object *obj_item,
+ const int sel)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd;
return it;
}
-/**
- * Prepend new object item
- *
- * @param obj The controlbar object
- * @param obj_item The object of item
- * @param sel The number of sel occupied
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_object_item_prepend(Evas_Object *
- obj,
- Evas_Object *
- obj_item,
- const int sel)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_object_item_prepend(Evas_Object *obj, Evas_Object *obj_item,
+ const int sel)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd;
return it;
}
-/**
- * Insert new object item before given item
- *
- * @param obj The controlbar object
- * @param before The given item
- * @param obj_item The object of item
- * @param sel The number of sel occupied
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
EAPI Elm_Controlbar_Item *
-elm_controlbar_object_item_insert_before(Evas_Object * obj,
- Elm_Controlbar_Item * before,
- Evas_Object * obj_item, const int sel)
+elm_controlbar_object_item_insert_before(Evas_Object *obj,
+ Elm_Controlbar_Item *before,
+ Evas_Object *obj_item, const int sel)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd;
return it;
}
-/**
- * Insert new object item after given item
- *
- * @param obj The controlbar object
- * @param after The given item
- * @param obj_item The object of item
- * @param sel The number of sel occupied
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
EAPI Elm_Controlbar_Item *
-elm_controlbar_object_item_insert_after(Evas_Object * obj,
- Elm_Controlbar_Item * after,
- Evas_Object * obj_item, const int sel)
+elm_controlbar_object_item_insert_after(Evas_Object *obj,
+ Elm_Controlbar_Item *after,
+ Evas_Object *obj_item, const int sel)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
- Widget_Data * wd;
- Elm_Controlbar_Item * it;
- Elm_Controlbar_Item * item;
+ Widget_Data *wd;
+ Elm_Controlbar_Item *it;
+ Elm_Controlbar_Item *item;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
if (!after) return NULL;
return it;
}
-/**
- * Get the object of the object item
- *
- * @param it The item of controlbar
- * @return The object of the object item
- *
- * @ingroup Controlbar
- */
EAPI Evas_Object *
-elm_controlbar_object_item_object_get(const Elm_Controlbar_Item * it)
+elm_controlbar_object_item_object_get(const Elm_Controlbar_Item *it)
{
if (!it) return NULL;
if (it->style != OBJECT) return NULL;
return it->base_item;
}
-/**
- * Delete item from controlbar
- *
- * @param it The item of controlbar
-
- * @ingroup Controlbar
- */
EAPI void
-elm_controlbar_item_del(Elm_Controlbar_Item * it)
+elm_controlbar_item_del(Elm_Controlbar_Item *it)
{
- Evas_Object * obj;
- Widget_Data * wd;
+ Evas_Object *obj;
+ Widget_Data *wd;
const Eina_List *l;
- Elm_Controlbar_Item * item;
+ Elm_Controlbar_Item *item;
int sel = 1;
_sizing_eval(obj);
}
-/**
- * Select item in controlbar
- *
- * @param it The item of controlbar
-
- * @ingroup Controlbar
- */
EAPI void
elm_controlbar_item_select(Elm_Controlbar_Item * it)
{
_select_box(it);
}
-/**
- * Set the icon of item
- *
- * @param it The item of controlbar
- * @param icon_path The icon path of the item
- * @return The icon object
- *
- * @ingroup Controlbar
- */
EAPI void
-elm_controlbar_item_icon_set(Elm_Controlbar_Item * it, const char *icon_path)
+elm_controlbar_item_icon_set(Elm_Controlbar_Item *it, const char *icon_path)
{
if (!it) return;
if (it->style == OBJECT) return;
elm_widget_disabled_set(it->base_item, EINA_FALSE);
}
-/**
- * Get the icon of item
- *
- * @param it The item of controlbar
- * @return The icon object
- *
- * @ingroup Controlbar
- */
EAPI Evas_Object *
-elm_controlbar_item_icon_get(const Elm_Controlbar_Item * it)
+elm_controlbar_item_icon_get(const Elm_Controlbar_Item *it)
{
if (!it) return NULL;
return it->icon;
}
-/**
- * Set the label of item
- *
- * @param it The item of controlbar
- * @param label The label of item
- *
- * @ingroup Controlbar
- */
EAPI void
-elm_controlbar_item_label_set(Elm_Controlbar_Item * it, const char *label)
+elm_controlbar_item_label_set(Elm_Controlbar_Item *it, const char *label)
{
if (!it) return;
if (it->style == OBJECT) return;
elm_widget_disabled_set(it->base_item, EINA_FALSE);
}
-/**
- * Get the label of item
- *
- * @param it The item of controlbar
- * @return The label of item
- *
- * @ingroup Controlbar
- */
EAPI const char *
elm_controlbar_item_label_get(const Elm_Controlbar_Item * it)
{
return it->text;
}
-/**
- * Get the selected item
- *
- * @param obj The controlbar object
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_selected_item_get(const Evas_Object *
- obj)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_selected_item_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
const Eina_List *l;
return NULL;
}
-/**
- * Get the first item
- *
- * @param obj The controlbar object
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_first_item_get(const Evas_Object * obj)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_first_item_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd = elm_widget_data_get(obj);
return eina_list_data_get(wd->items);
}
-/**
- * Get the last item
- *
- * @param obj The controlbar object
- * @return The item of controlbar
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_last_item_get(const Evas_Object * obj)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_last_item_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd = elm_widget_data_get(obj);
return eina_list_data_get(eina_list_last(wd->items));
}
-/**
- * Get the items
- *
- * @param obj The controlbar object
- * @return The list of the items
- *
- * @ingroup Controlbar
- */
-EAPI const Eina_List * elm_controlbar_items_get(const Evas_Object * obj)
+EAPI const Eina_List *
+elm_controlbar_items_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data * wd = elm_widget_data_get(obj);
return wd->items;
}
-/**
- * Get the previous item
- *
- * @param it The item of controlbar
- * @return The previous item of the parameter item
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_item_prev(Elm_Controlbar_Item *
- it)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_item_prev(Elm_Controlbar_Item *it)
{
if (!it) return NULL;
const Eina_List *l;
return NULL;
}
-/**
- * Get the next item
- *
- * @param obj The controlbar object
- * @return The next item of the parameter item
- *
- * @ingroup Controlbar
- */
-EAPI Elm_Controlbar_Item * elm_controlbar_item_next(Elm_Controlbar_Item *
- it)
+EAPI Elm_Controlbar_Item *
+elm_controlbar_item_next(Elm_Controlbar_Item *it)
{
if (!it) return NULL;
const Eina_List *l;
return NULL;
}
-/**
- * Set the visible status of item in bar
- *
- * @param it The item of controlbar
- * @param bar EINA_TRUE or EINA_FALSE
- *
- * @ingroup Controlbar
- */
EAPI void
-elm_controlbar_item_visible_set(Elm_Controlbar_Item * it, Eina_Bool visible)
+elm_controlbar_item_visible_set(Elm_Controlbar_Item *it, Eina_Bool visible)
{
if (!it) return;
if (it->obj == NULL) return;
_set_item_visible(it, visible);
}
-/**
- * Get the result which or not item is visible in bar
- *
- * @param it The item of controlbar
- * @return EINA_TRUE or EINA_FALSE
- *
- * @ingroup Controlbar
- */
EAPI Eina_Bool
-elm_controlbar_item_visible_get(const Elm_Controlbar_Item * it)
+elm_controlbar_item_visible_get(const Elm_Controlbar_Item *it)
{
if (!it) return EINA_FALSE;
if (it->obj == NULL) return EINA_FALSE;
return EINA_TRUE;
}
-/**
- * Set item disable
- *
- * @param it The item of controlbar
- * @param bar EINA_TRUE or EINA_FALSE
- *
- * @ingroup Controlbar
- */
EAPI void
-elm_controlbar_item_disabled_set(Elm_Controlbar_Item * it, Eina_Bool disabled)
+elm_controlbar_item_disabled_set(Elm_Controlbar_Item *it, Eina_Bool disabled)
{
if (!it) return;
if (it->base_item) elm_widget_disabled_set(it->base_item, disabled);
}
-/**
- * Get item disable
- *
- * @param it The item of controlbar
- * @return EINA_TRUE or EINA_FALSE
- *
- * @ingroup Controlbar
- */
EAPI Eina_Bool
-elm_controlbar_item_disabled_get(const Elm_Controlbar_Item * it)
+elm_controlbar_item_disabled_get(const Elm_Controlbar_Item *it)
{
if (!it) return EINA_FALSE;
return it->disabled;
}
-/**
- * Set the view of the item
- *
- * @param it The item of controlbar
- * @param view The view for the item
- *
- * @ingroup Controlbar
- */
EAPI void
elm_controlbar_item_view_set(Elm_Controlbar_Item *it, Evas_Object * view)
{
it->view = view;
}
-/**
- * Get the view of the item
- *
- * @param it The item of controlbar
- * @return The view for the item
- *
- * @ingroup Controlbar
- */
EAPI Evas_Object *
elm_controlbar_item_view_get(const Elm_Controlbar_Item *it)
{
return it->view;
}
-/**
- * Unset the view of the item
- *
- * @param it The item of controlbar
- * @return The view for the item
- *
- * @ingroup Controlbar
- */
EAPI Evas_Object *
elm_controlbar_item_view_unset(Elm_Controlbar_Item *it)
{
return content;
}
-/**
- * Set the mode of the controlbar
- *
- * @param obj The object of the controlbar
- * @param mode The mode of the controlbar
- *
- * @ingroup Controlbar
- */
EAPI void
elm_controlbar_mode_set(Evas_Object *obj, int mode)
{
_sizing_eval(obj);
}
-/**
- * Set the alpha of the controlbar
- *
- * @param obj The object of the controlbar
- * @param alpha The alpha value of the controlbar (0-100)
- *
- * @ingroup Controlbar
- */
EAPI void
elm_controlbar_alpha_set(Evas_Object *obj, int alpha)
{
evas_object_color_set(wd->bg, r, g, b, (int)(255 * wd->alpha / 100));
}
-
-/**
- * Set auto-align mode of the controlbar(It's not prepared yet)
- * If you set the auto-align and add items more than 5,
- * the "more" item will be made and the items more than 5 will be unvisible.
- *
- * @param obj The object of the controlbar
- * @param auto_align The dicision that the controlbar use the auto-align
- *
- * @ingroup Controlbar
- */
EAPI void
elm_controlbar_item_auto_align_set(Evas_Object *obj, Eina_Bool auto_align)
{
_sizing_eval(obj);
}
-/**
- * Set the vertical mode of the controlbar
- *
- * @param obj The object of the controlbar
- * @param vertical The vertical mode of the controlbar (TRUE = vertical, FALSE = horizontal)
- *
- * @ingroup Controlbar
- */
EAPI void
elm_controlbar_vertical_set(Evas_Object *obj, Eina_Bool vertical)
{
_check_toolbar_line(wd);
}
-/**
- * Get the button object of the item
- *
- * @param it The item of controlbar
- * @return button object of the item
- *
- * @ingroup Controlbar
- */
EAPI Evas_Object *
elm_controlbar_item_button_get(const Elm_Controlbar_Item *it)
{
Eina_Bool bgcolor : 1;
Eina_Bool can_write : 1;
Eina_Bool autosave : 1;
- Eina_Bool textonly : 1;
Eina_Bool usedown : 1;
Eina_Bool scroll : 1;
Eina_Bool input_panel_enable : 1;
Eina_Bool autoperiod : 1;
Eina_Bool matchlist_list_clicked : 1;
Eina_Bool matchlist_case_sensitive : 1;
+ Elm_CNP_Mode cnp_mode : 2;
};
struct _Elm_Entry_Context_Menu_Item
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return;
evas_object_smart_callback_call(obj, SIG_CURSOR_CHANGED, NULL);
- if (!elm_object_focus_get(obj)) return;
if (!wd->deferred_recalc_job)
{
Evas_Coord cx, cy, cw, ch;
wd->deferred_recalc_job = NULL;
evas_object_geometry_get(wd->ent, NULL, NULL, &resw, NULL);
- edje_object_size_min_restricted_calc(wd->ent, &minw, &minh, resw, 0);
+ /* This is a hack to workaround to avoid the cursor geometry bug
+ * in a char-wrap or a mixed-mode textblock in a scroller.
+ * The order of calling next 2 functions affects to the size of the textblock cursor.
+ * when the textblock core issue is fixed these comments will be removed. */
edje_object_size_min_restricted_calc(wd->ent, &fw, &fh, 0, 0);
+ edje_object_size_min_restricted_calc(wd->ent, &minw, &minh, resw, 0);
elm_coords_finger_size_adjust(1, &fw, 1, &minh);
wd->entmw = fw;
wd->entmh = minh;
}
}
- if ((wd->deferred_cur) && (elm_object_focus_get(data)))
+ if (wd->deferred_cur)
{
Evas_Coord cx, cy, cw, ch;
edje_object_part_text_cursor_geometry_get(wd->ent, "elm.text",
if (wd->sel_notify_handler)
{
#ifdef HAVE_ELEMENTARY_X
- Elm_Sel_Format formats;
+ Elm_Sel_Format formats = ELM_SEL_FORMAT_MARKUP;
wd->selection_asked = EINA_TRUE;
- formats = ELM_SEL_FORMAT_MARKUP;
- if (!wd->textonly)
+ if (wd->cnp_mode == ELM_CNP_MODE_PLAINTEXT)
+ formats = ELM_SEL_FORMAT_TEXT;
+ else if (wd->cnp_mode != ELM_CNP_MODE_NO_IMAGE)
formats |= ELM_SEL_FORMAT_IMAGE;
elm_selection_get(ELM_SEL_CLIPBOARD, formats, data, NULL, NULL);
#endif
{
Widget_Data *wd = elm_widget_data_get(obj);
const char *sel;
- char *sel_str;
+ char *sel_str = NULL;
+ Elm_Sel_Format formats = ELM_SEL_FORMAT_MARKUP;
if (!wd) return;
sel = edje_object_part_text_selection_get(wd->ent, "elm.text");
- sel_str = strdup(sel);
- if (!sel_str)
- return;
- if (wd->textonly)
+ if (wd->cnp_mode == ELM_CNP_MODE_PLAINTEXT)
{
- while (EINA_TRUE)
+ sel_str = elm_entry_markup_to_utf8(sel);
+ if (!sel_str)
+ return;
+ formats = ELM_SEL_FORMAT_TEXT;
+ }
+ else
+ {
+ sel_str = strdup(sel);
+ if (!sel_str)
+ return;
+ if (wd->cnp_mode == ELM_CNP_MODE_NO_IMAGE)
{
- char *startTag = NULL;
- char *endTag = NULL;
-
- startTag = strstr(sel_str, "<item");
- if (!startTag)
- startTag = strstr(sel_str, "</item");
- if (startTag)
- endTag = strstr(startTag, ">");
- else
- break;
- if (!endTag || startTag > endTag)
- break;
-
- size_t sindex = startTag - sel_str;
- size_t eindex = endTag - sel_str + 1;
-
- Eina_Strbuf *buf = eina_strbuf_new();
- if (buf)
+ while (EINA_TRUE)
{
- eina_strbuf_append(buf, sel_str);
- eina_strbuf_remove(buf, sindex, eindex);
- sel_str = eina_strbuf_string_steal(buf);
- eina_strbuf_free(buf);
+ char *startTag = NULL;
+ char *endTag = NULL;
+
+ startTag = strstr(sel_str, "<item");
+ if (!startTag)
+ startTag = strstr(sel_str, "</item");
+ if (startTag)
+ endTag = strstr(startTag, ">");
+ else
+ break;
+ if (!endTag || startTag > endTag)
+ break;
+
+ size_t sindex = startTag - sel_str;
+ size_t eindex = endTag - sel_str + 1;
+
+ Eina_Strbuf *buf = eina_strbuf_new();
+ if (buf)
+ {
+ eina_strbuf_append(buf, sel_str);
+ eina_strbuf_remove(buf, sindex, eindex);
+ sel_str = eina_strbuf_string_steal(buf);
+ eina_strbuf_free(buf);
+ }
}
}
}
- elm_selection_set(seltype, obj, ELM_SEL_FORMAT_MARKUP, sel_str);
+ elm_selection_set(seltype, obj, formats, sel_str);
if (seltype == ELM_SEL_CLIPBOARD)
- eina_stringshare_replace(&wd->cut_sel, sel_str);
+ eina_stringshare_replace(&wd->cut_sel, sel);
free(sel_str);
}
#endif
cnpwidgetdata = data;
elm_cbhm_helper_init(obj);
- if (elm_entry_cnp_textonly_get(obj))
+ if (elm_entry_cnp_mode_get(obj) != ELM_CNP_MODE_MARKUP)
elm_cbhm_send_raw_data("show0");
else
elm_cbhm_send_raw_data("show1");
if (cnpwidgetdata == data)
{
+ Widget_Data *wd = elm_widget_data_get(data);
+ Elm_Sel_Format formats = ELM_SEL_FORMAT_MARKUP;
evas_object_smart_callback_call(data, SIG_SELECTION_PASTE, NULL);
- elm_selection_get(ELM_SEL_SECONDARY,ELM_SEL_FORMAT_MARKUP,data,NULL,NULL);
+ if (wd->cnp_mode == ELM_CNP_MODE_PLAINTEXT)
+ formats = ELM_SEL_FORMAT_TEXT;
+ else if (wd->cnp_mode != ELM_CNP_MODE_NO_IMAGE)
+ formats |= ELM_SEL_FORMAT_IMAGE;
+ elm_selection_get(ELM_SEL_SECONDARY, formats ,data, NULL, NULL);
}
// end for cbhm
wd->disabled = EINA_FALSE;
wd->context_menu = EINA_TRUE;
wd->autosave = EINA_TRUE;
- wd->textonly = EINA_FALSE;
+ wd->cnp_mode = ELM_CNP_MODE_MARKUP;
wd->autoperiod = EINA_TRUE;
wd->ent = edje_object_add(e);
ext_mod->selmode = wd->selmode;
ext_mod->cnpinit = _cnpinit;
ext_mod->context_menu = wd->context_menu;
- ext_mod->textonly = wd->textonly;
+ ext_mod->cnp_mode = wd->cnp_mode;
}
EAPI void
if (wd->single_line == single_line) return;
wd->single_line = single_line;
wd->linewrap = ELM_WRAP_NONE;
- elm_entry_cnp_textonly_set(obj, EINA_TRUE);
+ elm_entry_cnp_mode_set(obj, ELM_CNP_MODE_NO_IMAGE);
_theme_hook(obj);
if (wd->scroller)
{
EAPI void
elm_entry_cnp_textonly_set(Evas_Object *obj, Eina_Bool textonly)
{
+ ELM_CHECK_WIDTYPE(obj, widtype);
+ elm_entry_cnp_mode_set(obj, textonly ? ELM_CNP_MODE_NO_IMAGE : ELM_CNP_MODE_MARKUP);
+}
+
+EAPI Eina_Bool
+elm_entry_cnp_textonly_get(const Evas_Object *obj)
+{
+ ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
+ return elm_entry_cnp_mode_get(obj) != ELM_CNP_MODE_MARKUP;
+}
+
+EAPI void
+elm_entry_cnp_mode_set(Evas_Object *obj, Elm_CNP_Mode cnp_mode)
+{
Elm_Sel_Format format = ELM_SEL_FORMAT_MARKUP;
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return;
- textonly = !!textonly;
- if (wd->textonly == textonly) return;
- wd->textonly = !!textonly;
- if (!textonly) format |= ELM_SEL_FORMAT_IMAGE;
+ if (wd->cnp_mode == cnp_mode) return;
+ wd->cnp_mode = cnp_mode;
+ if (wd->cnp_mode == ELM_CNP_MODE_PLAINTEXT)
+ format = ELM_SEL_FORMAT_TEXT;
+ else if (cnp_mode == ELM_CNP_MODE_MARKUP) format |= ELM_SEL_FORMAT_IMAGE;
#ifdef HAVE_ELEMENTARY_X
elm_drop_target_add(obj, format, _drag_drop_cb, NULL);
#endif
}
-EAPI Eina_Bool
-elm_entry_cnp_textonly_get(const Evas_Object *obj)
+EAPI Elm_CNP_Mode
+elm_entry_cnp_mode_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return EINA_FALSE;
- return wd->textonly;
+ return wd->cnp_mode;
}
EAPI void
ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(it);
Widget_Data *wd = elm_widget_data_get(WIDGET(it));
if (!wd) return;
- Elm_Genlist_Item *it2;
+ Elm_Genlist_Item *it2, *it3;
Evas_Coord y, h;
- if (!it->wd->effect_mode || !it->wd->move_effect_mode)
+ if (!wd->effect_mode || !wd->move_effect_mode)
_item_subitems_clear(it);
else
{
- if ((!it->wd->item_moving_effect_timer) && (it->flags != ELM_GENLIST_ITEM_GROUP) &&
- it->wd->move_effect_mode != ELM_GENLIST_ITEM_MOVE_EFFECT_DELETE )
+ if ((!wd->item_moving_effect_timer) && (it->flags != ELM_GENLIST_ITEM_GROUP) &&
+ wd->move_effect_mode != ELM_GENLIST_ITEM_MOVE_EFFECT_DELETE)
{
- it->wd->expand_item = it;
+ wd->expand_item = it;
_item_flip_effect_show(it);
evas_object_geometry_get(VIEW(it), NULL, &y, NULL, &h);
- it->wd->expand_item_end = y + h;
+ wd->expand_item_end = y + h;
- it2= it;
+ it2= it;
do {
it2 = elm_genlist_item_next_get(it2);
if (!it2) break;
} while (it2->expanded_depth > it->expanded_depth);
if (it2)
{
+ int diff;
Evas_Coord vy, vh;
evas_output_viewport_get(evas_object_evas_get(wd->pan_smart), NULL, &vy, NULL, &vh);
- it2->old_scrl_y = ((it2->old_scrl_y > vy + vh) ? vy + vh : it2->old_scrl_y);
- it->wd->expand_item_gap = it->wd->expand_item_end - it2->old_scrl_y;
+ diff = it2->old_scrl_y - (vy + vh);
+ if (diff > 0)
+ {
+ it3 = it2;
+ while (it3)
+ {
+ it3->old_scrl_y = it3->old_scrl_y - diff;
+ it3 = elm_genlist_item_next_get(it3);
+ }
+ }
+
+ wd->expand_item_gap = wd->expand_item_end - it2->old_scrl_y;
}
else
- it->wd->expand_item_gap = 0;
+ wd->expand_item_gap = 0;
- evas_object_raise(it->wd->alpha_bg);
- evas_object_show(it->wd->alpha_bg);
+ evas_object_raise(wd->alpha_bg);
+ evas_object_show(wd->alpha_bg);
- it->wd->start_time = current_time_get();
- it->wd->item_moving_effect_timer = ecore_animator_add(_item_moving_effect_timer_cb, it->wd);
+ wd->start_time = current_time_get();
+ wd->item_moving_effect_timer = ecore_animator_add(_item_moving_effect_timer_cb, wd);
}
else
_item_subitems_clear(it);
Elm_Genlist_Item *it2;
Eina_List *l;
- // printf("%p is emited contract\n", it);
edje_object_signal_emit(VIEW(it), "elm,state,contract_flip", "");
it->effect_done = EINA_FALSE;
Elm_Genlist_Item *it2;
Eina_List *l;
Widget_Data *wd = it->wd;
- Eina_Bool check = EINA_FALSE;
- it2 = elm_genlist_item_next_get(it);
- while (it2)
- {
- if (it2->expanded_depth <= it->expanded_depth) check = EINA_TRUE;
- it2 = elm_genlist_item_next_get(it2);
- }
EINA_LIST_FOREACH(it->items, l, it2)
{
if (it2->parent && it == it2->parent)
-/*
-*
-* vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
-*/
#include <stdio.h>
#include <math.h>
#include <Elementary.h>
#include "elm_priv.h"
-/**
-* @defgroup Imageslider Imageslider
-* @ingroup Elementary
-*
-* By flicking images on the screen,
-* you can see the images in specific path.
-*/
-
typedef struct _Widget_Data Widget_Data;
#define ANI_STEP (14 * elm_scale_get())
}
if (wd) free(wd);
-
}
// Whenever require processing theme, Call this function
_imageslider_move(obj, e, obj, NULL);
_imageslider_resize(obj, e, obj, NULL);
-
}
// Whenever MOVE event occurs, Call this function.
wd->y = y;
_imageslider_update_pos(wd, wd->x, wd->y, wd->w);
-
}
// Whenever RESIZE event occurs, Call this fucntion.
_anim(wd);
}
-/**
-* Add an Image Slider widget
-*
-* @param parent The parent object
-* @return The new Image slider object or NULL if it cannot be created
-*
-* @ingroup Imageslider
-*/
EAPI Evas_Object *
elm_imageslider_add(Evas_Object *parent)
{
return obj;
}
-/**
-* Append an Image Slider item
-*
-* @param obj The Image Slider object
-* @param photo_file photo file path
-* @param func callback function
-* @param data callback data
-* @return The Image Slider item handle or NULL
-*
-* @ingroup Imageslider
-*/
EAPI Elm_Imageslider_Item *
elm_imageslider_item_append(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data)
{
return it;
}
-/**
-* Insert an Image Slider item into the Image Slider Widget by using the given index.
-*
-* @param obj The Image Slider object
-* @param photo_file photo file path
-* @param func callback function
-* @param index required position
-* @param data callback data
-* @return The Image Slider item handle or NULL
-*
-* @ingroup Imageslider
-*/
EAPI Elm_Imageslider_Item *
elm_imageslider_item_append_relative(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, unsigned int index, void *data)
{
return it;
}
-/**
-* Prepend Image Slider item
-*
-* @param obj The Image Slider object
-* @param photo_file photo file path
-* @param func callback function
-* @param data callback data
-* @return The imageslider item handle or NULL
-*
-* @ingroup Imageslider
-*/
EAPI Elm_Imageslider_Item *
elm_imageslider_item_prepend(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data)
{
return it;
}
-/**
-* Delete the selected Image Slider item
-*
-* @param it The selected Image Slider item handle
-*
-* @ingroup Imageslider
-*/
EAPI void
elm_imageslider_item_del(Elm_Imageslider_Item * it)
{
_imageslider_update(wd);
}
-/**
-* Get the selected Image Slider item
-*
-* @param obj The Image Slider object
-* @return The selected Image Slider item or NULL
-*
-* @ingroup Imageslider
-*/
EAPI Elm_Imageslider_Item *
elm_imageslider_selected_item_get(Evas_Object *obj)
{
return eina_list_data_get(wd->cur);
}
-/**
-* Get whether an Image Slider item is selected or not
-*
-* @param it the selected Image Slider item
-* @return EINA_TRUE or EINA_FALSE
-*
-* @ingroup Imageslider
-*/
EAPI Eina_Bool
elm_imageslider_item_selected_get(Elm_Imageslider_Item * it)
{
return EINA_FALSE;
}
-/**
-* Set the selected Image Slider item
-*
-* @param it The Imaga Slider item
-*
-* @ingroup Imageslider
-*/
EAPI void
elm_imageslider_item_selected_set(Elm_Imageslider_Item * it)
{
_imageslider_update(wd);
}
-/**
-* Get the photo file path of given Image Slider item
-*
-* @param it The Image Slider item
-* @return The photo file path or NULL;
-*
-* @ingroup Imageslider
-*/
EAPI const char *
elm_imageslider_item_photo_file_get(Elm_Imageslider_Item * it)
{
return it->photo_file;
}
-/**
-* Sets the photo file path of given Image Slider item
-*
-* @param it The Image Slider item
-* @param photo_file The photo file path or NULL;
-*
-* @ingroup Imageslider
-*/
EAPI void
elm_imageslider_item_photo_file_set(Elm_Imageslider_Item *it, const char *photo_file)
{
}
}
-/**
-* Get the previous Image Slider item
-*
-* @param it The Image Slider item
-* @return The previous Image Slider item or NULL
-*
-* @ingroup Imageslider
-*/
EAPI Elm_Imageslider_Item *
elm_imageslider_item_prev(Elm_Imageslider_Item * it)
{
return NULL;
}
-/**
-* Get the next Image Slider item
-*
-* @param it The Image Slider item
-* @return The next Image Slider item or NULL
-*
-* @ingroup Imageslider
-*/
EAPI Elm_Imageslider_Item *
elm_imageslider_item_next(Elm_Imageslider_Item * it)
{
return NULL;
}
-/**
-* Move to the previous Image Slider item
-*
-* @param obj The Image Slider object
-*
-* @ingroup Imageslider
-*/
EAPI void
elm_imageslider_prev(Evas_Object *obj)
{
_imageslider_obj_move(wd, -1);
}
-/**
-* Move to the next Image Slider item
-*
-* @param obj The Image Slider object
-*
-* @ingroup Imageslider
-*/
EAPI void
elm_imageslider_next(Evas_Object * obj)
{
_imageslider_obj_move(wd, 1);
}
-/**
-* Updates an Image Slider item
-*
-* @param it The Image Slider item
-*
-* @ingroup Imageslider
-*/
EAPI void
elm_imageslider_item_update(Elm_Imageslider_Item *it)
{
Eina_Bool have_selection: 1;
Eina_Bool selmode :1;
Eina_Bool context_menu : 1;
- Eina_Bool textonly : 1;
+ Elm_CNP_Mode cnp_mode : 2;
};
EAPI void elm_entry_extension_module_data_get(Evas_Object *obj,Elm_Entry_Extension_data *ext_mod);
Eina_List *themes;
Eina_List *extension;
Eina_Hash *cache;
+ Eina_Hash *cache_data;
Elm_Theme *ref_theme;
Eina_List *referrers;
const char *theme;
{
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd;
- if (!part || strcmp(part, "icon")) return;
+ if (part && strcmp(part, "icon")) return;
wd = elm_widget_data_get(obj);
if (!wd) return;
if (wd->icon == content) return;
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
- if (!part || strcmp(part, "icon")) return NULL;
+ if (part && strcmp(part, "icon")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
return wd->icon;
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
Evas_Object *icon;
- if (!part || strcmp(part, "icon")) return NULL;
+ if (part && strcmp(part, "icon")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
if (!wd->icon) return NULL;
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd;
- if (!part || strcmp(part, "icon")) return;
+ if (part && strcmp(part, "icon")) return;
wd = elm_widget_data_get(obj);
if (!wd) return;
if (wd->icon == content) return;
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
- if (!part || strcmp(part, "icon")) return NULL;
+ if (part && strcmp(part, "icon")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
return wd->icon;
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
Evas_Object *icon;
- if (!part || strcmp(part, "icon")) return NULL;
+ if (part && strcmp(part, "icon")) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
if (!wd->icon) return NULL;
+++ /dev/null
-/*
- * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
- */
-#include <Elementary.h>
-#include "elm_priv.h"
-
-/**
- * @defgroup Grid Scrolled Grid
- * @ingroup Elementary
- *
- * This widget aims to position objects in a grid layout while actually
- * building only the visible ones, using the same idea as genlist: the user
- * define a class for each cell, specifying functions that will be called at
- * object creation and deletion.
- *
- * Signals that you can add callbacks for are:
- *
- * clicked - The user has double-clicked a cell. The event_info parameter is
- * the grid cell that was double-clicked.
- *
- * selected - The user has made an item selected. The event_info parameter is
- * the grid cell that was selected.
- *
- * unselected - The user has made an item unselected. The event_info parameter
- * is the grid cell that was unselected.
- *
- * realized - This is called when the cell in the grid is created as a real
- * evas object. event_info is the grid cell that was created. The object may be
- * deleted at any time, so it is up to the caller to not use the object pointer
- * from elm_scrolled_grid_cell_object_get() in a way where it may point to
- * freed objects.
- *
- * drag,start,up - Called when the cell in the grid has been dragged (not
- * scrolled) up.
- *
- * drag,start,down - Called when the cell in the grid has been dragged (not
- * scrolled) down.
- *
- * drag,start,left - Called when the cell in the grid has been dragged (not
- * scrolled) left.
- *
- * drag,start,right - Called when the cell in the grid has been dragged (not
- * scrolled) right.
- *
- * drag,stop - Called when the cell in the grid has stopped being dragged.
- *
- * drag - Called when the cell in the grid is being dragged.
- *
- * scroll - called when the content has been scrolled (moved).
- *
- * scroll,drag,start - called when dragging the content has started.
- *
- * scroll,drag,stop - called when dragging the content has stopped.
- *
- *
- * A cell in the grid can have 0 or more text labels (they can be regular text
- * or textblock - that's up to the style to determine), 0 or more icons (which
- * are simply objects swallowed into the grid cell) and 0 or more boolean states
- * that can be used for check, radio or other indicators by the edje theme style.
- * A cell may be one of several styles (Elementary provides 1 by default -
- * "default", but this can be extended by system or application custom
- * themes/overlays/extensions).
- *
- * In order to implement the ability to add and delete cells on the fly, Grid
- * implements a class/callback system where the application provides a structure
- * with information about that type of cell (grid may contain multiple different
- * cells with different classes, states and styles). Grid will call the functions
- * in this struct (methods) when a cell is "realized" (that is created
- * dynamically while scrolling). All objects will simply be deleted when no
- * longer needed with evas_object_del(). The Elm_Genlist_Item_Class structure
- * contains the following members:
- *
- * cell_style - This is a constant string and simply defines the name of the
- * cell style. It must be specified and the default should be "default".
- *
- * func.label_get - This function is called when an actual cell object is
- * created. The data parameter is the one passed to elm_scrolled_grid_cell_add()
- * and related cell creation functions. The obj parameter is the grid object and
- * the part parameter is the string name of the text part in the edje design that
- * is listed as one of the possible labels that can be set. This function must
- * return a strdup'()ed string as the caller will free() it when done.
- *
- * func.icon_get - This function is called when an actual item object is
- * created. The data parameter is the one passed to elm_scrolled_grid_cell_add()
- * and related cell creation functions. The obj parameter is the grid object and
- * the part parameter is the string name of the icon part in the edje design that
- * is listed as one of the possible icons that can be set. This must return NULL
- * for no object or a valid object. The object will be deleted by grid on
- * shutdown or when the cell is unrealized.
- *
- * func.state_get - This function is called when an actual cell object is
- * created. The data parameter is the one passed to elm_scrolled_grid_cell_add()
- * and related cell creation functions. The obj parameter is the grid object and
- * the part parameter is the string name of th state part in the edje design that
- * is listed as one of the possible states that can be set. Return 0 for false
- * and 1 for true. Grid will emit a signal to the edje object with
- * "elm,state,XXX,active" "elm" when true (the default is false), where XXX is
- * the name of the part.
- *
- * func.del - This is called when elm_scrolled_grid_cell_del() is called on a
- * cell or elm_scrolled_grid_clear() is called on the grid. This is intended for
- * use when actual grid cells are deleted, so any backing data attached to the
- * cell (e.g. its data parameter on creation) can be deleted.
- *
- * If the application wants multiple cells to be able to be selected,
- * elm_scrolled_grid_multi_select_set() can enable this. If the grid is
- * single-selection only (the default), then elm_scrolled_grid_select_cell_get()
- * will return the selected cell, if any, or NULL if none is selected. If the
- * grid is multi-select then elm_scrolled_grid_selected_cells_get() will return a
- * list (that is only valid as long as no cells are modified (added, deleted,
- * selected or unselected).
- *
- * If a cell changes (state of boolean changes, label or icons change), then use
- * elm_scrolled_grid_cell_update() to have grid update the cell with the new
- * state. Grid will re-realize the cell thus call the functions in the
- * _Elm_Grid_Cell_Class for that cell.
- *
- * To programmatically (un)select a cell use elm_scrolled_grid_cell_selected_set().
- * To get its selected state use elm_scrolled_grid_cell_selected_get(). To make a
- * cell disabled (unable to be selected and appear differently) use
- * elm_scrolled_grid_cell_disable_set() to set this and
- * elm_scrolled_grid_cell_disable_get() to get the disabled state.
- *
- * Cells will only call their selection func and callback when first becoming
- * selected. Any further clicks will do nothing, unless you enable always
- * select with elm_scrolled_grid_always_select_mode_set(). This means event if
- * selected, every click will make the selected callbacks be called.
- * elm_scrolled_grid_no_select_mode_set() will turn off the ability to select
- * items entirely and they will neither appear selected nor call selected
- * callback function.
- *
- * Remember that you can create new styles and add your own theme augmentation
- * per application with elm_theme_extension_add(). If you absolutely must have a
- * specific style that overrides any theme the user or system sets up you can use
- * elm_theme_overlay_add() to add such a file.
- *
- * --
- * TODO:
- * * Handle non-homogeneous objects too.
- */
-
-typedef struct _Widget_Data Widget_Data;
-typedef struct _Pan Pan;
-
-#define PRELOAD 1
-
-struct _Elm_Grid_Cell
-{
- Evas_Object *base, *spacer;
- const Elm_Grid_Cell_Class *gcc;
- Ecore_Timer *long_timer;
- Widget_Data *wd;
- Eina_List *labels, *icons, *states, *icon_objs;
- const void *data;
- struct
- {
- Evas_Smart_Cb func;
- const void *data;
- } func;
-
- Evas_Coord x, y, dx, dy;
- int relcount;
-
- Eina_Bool want_unrealize : 1;
- Eina_Bool realized : 1;
- Eina_Bool dragging : 1;
- Eina_Bool down : 1;
- Eina_Bool delete_me : 1;
- Eina_Bool display_only : 1;
- Eina_Bool disabled : 1;
- Eina_Bool selected : 1;
- Eina_Bool hilighted : 1;
- Eina_Bool walking : 1;
-};
-
-struct _Widget_Data
-{
- Evas_Object *self, *scr;
- Evas_Object *pan_smart;
- Pan *pan;
- Eina_List *cells;
- Ecore_Job *calc_job;
- Eina_List *selected;
- double align_x, align_y;
-
- Evas_Coord pan_x, pan_y;
- Evas_Coord cell_width, cell_height; /* Each cell size */
- Evas_Coord minw, minh; /* Total obj size */
- unsigned int nmax;
-
- Eina_Bool horizontal : 1;
- Eina_Bool on_hold : 1;
- Eina_Bool longpressed : 1;
- Eina_Bool multi : 1;
- Eina_Bool no_select : 1;
- Eina_Bool wasselected : 1;
- Eina_Bool always_select : 1;
-};
-
-struct _Pan
-{
- Evas_Object_Smart_Clipped_Data __clipped_data;
- Widget_Data *wd;
-};
-
-static const char *widtype = NULL;
-static void _sizing_eval(Evas_Object *obj);
-static void _cell_hilight(Elm_Grid_Cell *cell);
-static void _cell_unrealize(Elm_Grid_Cell *cell);
-static void _cell_select(Elm_Grid_Cell *cell);
-static void _cell_unselect(Elm_Grid_Cell *cell);
-
-static Evas_Smart_Class _pan_sc = EVAS_SMART_CLASS_INIT_VERSION;
-
-static void
-_theme_hook(Evas_Object *obj)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_object_theme_set(obj, wd->scr, "grid", "base",
- elm_widget_style_get(obj));
- _sizing_eval(obj);
-}
-
-static void
-_sizing_eval(Evas_Object *obj)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- Evas_Coord minw = -1, minh = -1, maxw = -1, maxh = -1;
- if (!wd) return;
- evas_object_size_hint_max_get(wd->scr, &maxw, &maxh);
- evas_object_size_hint_min_set(obj, minw, minh);
- evas_object_size_hint_max_set(obj, maxw, maxh);
-}
-
-static void
-_del_hook(Evas_Object *obj)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- if (wd->calc_job) ecore_job_del(wd->calc_job);
- evas_object_del(wd->pan_smart);
- wd->pan_smart = NULL;
- elm_scrolled_grid_clear(obj);
- free(wd);
-}
-
-static void
-_mouse_move(void *data, Evas *evas __UNUSED__, Evas_Object *obj, void *event_info)
-{
- Elm_Grid_Cell *cell = data;
- Evas_Event_Mouse_Move *ev = event_info;
- Evas_Coord minw = 0, minh = 0, x, y, dx, dy, adx, ady;
-
- if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD)
- {
- if (!cell->wd->on_hold) {
- cell->wd->on_hold = EINA_TRUE;
- _cell_unselect(cell);
- }
- }
- if ((cell->dragging) && (cell->down))
- {
- if (cell->long_timer)
- {
- ecore_timer_del(cell->long_timer);
- cell->long_timer = NULL;
- }
- evas_object_smart_callback_call(cell->wd->self, "drag", cell);
- return;
- }
- if ((!cell->down) || (cell->wd->longpressed))
- {
- if (cell->long_timer)
- {
- ecore_timer_del(cell->long_timer);
- cell->long_timer = NULL;
- }
- return;
- }
- if (!cell->display_only)
- elm_coords_finger_size_adjust(1, &minw, 1, &minh);
- evas_object_geometry_get(obj, &x, &y, NULL, NULL);
- x = ev->cur.canvas.x - x;
- y = ev->cur.canvas.y - y;
- dx = x - cell->dx;
- adx = dx;
- if (adx < 0) adx = -dx;
- dy = y - cell->dy;
- ady = dy;
- if (ady < 0) ady = -dy;
- minw /= 2;
- minh /= 2;
- if ((adx > minw) || (ady > minh))
- {
- cell->dragging = 1;
- if (cell->long_timer)
- {
- ecore_timer_del(cell->long_timer);
- cell->long_timer = NULL;
- }
- if (cell->wd->wasselected)
- _cell_unselect(cell);
- cell->wd->wasselected = 0;
- if (dy < 0)
- {
- if (ady > adx)
- evas_object_smart_callback_call(cell->wd->self, "drag,start,up",
- cell);
- else
- {
- if (dx < 0)
- evas_object_smart_callback_call(cell->wd->self,
- "drag,start,left", cell);
- }
- }
- else
- {
- if (ady > adx)
- evas_object_smart_callback_call(cell->wd->self,
- "drag,start,down", cell);
- else
- {
- if (dx < 0)
- evas_object_smart_callback_call(cell->wd->self,
- "drag,start,left", cell);
- else
- evas_object_smart_callback_call(cell->wd->self,
- "drag,start,right", cell);
- }
- }
- }
-}
-
-static int
-_long_press(void *data)
-{
- Elm_Grid_Cell *cell = data;
-
- cell->long_timer = NULL;
- if ((cell->disabled) || (cell->dragging)) return 0;
- cell->wd->longpressed = EINA_TRUE;
- evas_object_smart_callback_call(cell->wd->self, "longpressed", cell);
- return 0;
-}
-
-static void
-_mouse_down(void *data, Evas *evas __UNUSED__, Evas_Object *obj, void *event_info)
-{
- Elm_Grid_Cell *cell = data;
- Evas_Event_Mouse_Down *ev = event_info;
- Evas_Coord x, y;
-
- if (ev->button != 1) return;
- cell->down = 1;
- cell->dragging = 0;
- evas_object_geometry_get(obj, &x, &y, NULL, NULL);
- cell->dx = ev->canvas.x - x;
- cell->dy = ev->canvas.y - y;
- cell->wd->longpressed = EINA_FALSE;
- if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) cell->wd->on_hold = EINA_TRUE;
- else cell->wd->on_hold = EINA_FALSE;
- cell->wd->wasselected = cell->selected;
- _cell_hilight(cell);
- if (ev->flags & EVAS_BUTTON_DOUBLE_CLICK)
- evas_object_smart_callback_call(cell->wd->self, "clicked", cell);
- if (cell->long_timer) ecore_timer_del(cell->long_timer);
- if (cell->realized)
- cell->long_timer = ecore_timer_add(1.0, _long_press, cell);
- else
- cell->long_timer = NULL;
-}
-
-static void
-_mouse_up(void *data, Evas *evas __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
-{
- Elm_Grid_Cell *cell = data;
- Evas_Event_Mouse_Up *ev = event_info;
- Eina_Bool dragged = EINA_FALSE;
-
- if (ev->button != 1) return;
- cell->down = EINA_FALSE;
- if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) cell->wd->on_hold = EINA_TRUE;
- else cell->wd->on_hold = EINA_FALSE;
- if (cell->long_timer)
- {
- ecore_timer_del(cell->long_timer);
- cell->long_timer = NULL;
- }
- if (cell->dragging)
- {
- cell->dragging = EINA_FALSE;
- evas_object_smart_callback_call(cell->wd->self, "drag,stop", cell);
- dragged = EINA_TRUE;
- }
- if (cell->wd->on_hold)
- {
- cell->wd->longpressed = EINA_FALSE;
- cell->wd->on_hold = EINA_FALSE;
- return;
- }
- if (cell->wd->longpressed)
- {
- cell->wd->longpressed = EINA_FALSE;
- if (!cell->wd->wasselected)
- _cell_unselect(cell);
- cell->wd->wasselected = EINA_FALSE;
- return;
- }
- if (dragged)
- {
- if (cell->want_unrealize)
- _cell_unrealize(cell);
- }
- if ((cell->disabled) || dragged) return;
- if (cell->wd->multi)
- {
- if (!cell->selected)
- {
- _cell_hilight(cell);
- _cell_select(cell);
- }
- else _cell_unselect(cell);
- }
- else
- {
- if (!cell->selected)
- {
- while (cell->wd->selected) _cell_unselect(cell->wd->selected->data);
- }
- else
- {
- const Eina_List *l, *l_next;
- Elm_Grid_Cell *cell2;
-
- EINA_LIST_FOREACH_SAFE(cell->wd->selected, l, l_next, cell2)
- if (cell2 != cell) _cell_unselect(cell2);
- }
- _cell_hilight(cell);
- _cell_select(cell);
- }
-}
-
-static void
-_cell_hilight(Elm_Grid_Cell *cell)
-{
- if ((cell->wd->no_select) || (cell->delete_me) || (cell->hilighted)) return;
- edje_object_signal_emit(cell->base, "elm,state,selected", "elm");
- cell->hilighted = EINA_TRUE;
-}
-
-static void
-_cell_realize(Elm_Grid_Cell *cell)
-{
- char buf[1024];
-
- if ((cell->realized) || (cell->delete_me)) return;
- cell->base = edje_object_add(evas_object_evas_get(cell->wd->self));
- edje_object_scale_set(cell->base, elm_widget_scale_get(cell->wd->self) *
- _elm_config->scale);
- evas_object_smart_member_add(cell->base, cell->wd->pan_smart);
- elm_widget_sub_object_add(cell->wd->self, cell->base);
- _elm_theme_object_set(cell->wd->self, cell->base, "grid", "cell/default",
- elm_widget_style_get(cell->wd->self));
- cell->spacer = evas_object_rectangle_add(evas_object_evas_get(cell->wd->self));
- evas_object_color_set(cell->spacer, 0, 0, 0, 0);
- elm_widget_sub_object_add(cell->wd->self, cell->spacer);
- evas_object_size_hint_min_set(cell->spacer, 2 * _elm_config->scale, 1);
- edje_object_part_swallow(cell->base, "elm.swallow.pad", cell->spacer);
-
- if (cell->gcc->func.label_get)
- {
- const Eina_List *l;
- const char *key;
-
- cell->labels = _elm_stringlist_get(edje_object_data_get(cell->base,
- "labels"));
- EINA_LIST_FOREACH(cell->labels, l, key)
- {
- char *s = cell->gcc->func.label_get(cell->data, cell->wd->self,
- l->data);
- if (s)
- {
- edje_object_part_text_set(cell->base, l->data, s);
- free(s);
- }
- }
- }
-
- if (cell->gcc->func.icon_get)
- {
- const Eina_List *l;
- const char *key;
-
- cell->icons = _elm_stringlist_get(edje_object_data_get(cell->base,
- "icons"));
- EINA_LIST_FOREACH(cell->icons, l, key)
- {
- Evas_Object *ic = cell->gcc->func.icon_get(cell->data,
- cell->wd->self,
- l->data);
- if (ic)
- {
- cell->icon_objs = eina_list_append(cell->icon_objs, ic);
- edje_object_part_swallow(cell->base, key, ic);
- evas_object_show(ic);
- elm_widget_sub_object_add(cell->wd->self, ic);
- }
- }
- }
-
- if (cell->gcc->func.state_get)
- {
- const Eina_List *l;
- const char *key;
-
- cell->states = _elm_stringlist_get(edje_object_data_get(cell->base,
- "states"));
- EINA_LIST_FOREACH(cell->states, l, key)
- {
- Eina_Bool on = cell->gcc->func.state_get(cell->data,
- cell->wd->self, l->data);
- if (on)
- {
- snprintf(buf, sizeof(buf), "elm,state,%s,active", key);
- edje_object_signal_emit(cell->base, buf, "elm");
- }
- }
- }
-
- if (!cell->wd->cell_width && !cell->wd->cell_height)
- {
- edje_object_size_min_restricted_calc(cell->base,
- &cell->wd->cell_width, &cell->wd->cell_height,
- cell->wd->cell_width, cell->wd->cell_height);
- elm_coords_finger_size_adjust(1, &cell->wd->cell_width,
- 1, &cell->wd->cell_height);
- }
-
- evas_object_event_callback_add(cell->base, EVAS_CALLBACK_MOUSE_DOWN,
- _mouse_down, cell);
- evas_object_event_callback_add(cell->base, EVAS_CALLBACK_MOUSE_UP,
- _mouse_up, cell);
- evas_object_event_callback_add(cell->base, EVAS_CALLBACK_MOUSE_MOVE,
- _mouse_move, cell);
-
- if (cell->selected)
- edje_object_signal_emit(cell->base, "elm,state,selected", "elm");
- if (cell->disabled)
- edje_object_signal_emit(cell->base, "elm,state,disabled", "elm");
-
- evas_object_show(cell->base);
- cell->realized = EINA_TRUE;
- cell->want_unrealize = EINA_FALSE;
-}
-
-static void
-_cell_unrealize(Elm_Grid_Cell *cell)
-{
- Evas_Object *icon;
-
- if (!cell->realized) return;
- if (cell->long_timer)
- {
- ecore_timer_del(cell->long_timer);
- cell->long_timer = NULL;
- }
- evas_object_del(cell->base);
- cell->base = NULL;
- evas_object_del(cell->spacer);
- cell->spacer = NULL;
- _elm_stringlist_free(cell->labels);
- cell->labels = NULL;
- _elm_stringlist_free(cell->icons);
- cell->icons = NULL;
- _elm_stringlist_free(cell->states);
-
- EINA_LIST_FREE(cell->icon_objs, icon)
- evas_object_del(icon);
-
- cell->states = NULL;
- cell->realized = EINA_FALSE;
- cell->want_unrealize = EINA_FALSE;
-}
-
-static void
-_cell_place(Elm_Grid_Cell *cell, Evas_Coord cx, Evas_Coord cy)
-{
- Evas_Coord x, y, ox, oy, cvx, cvy, cvw, cvh;
- Evas_Coord tch, tcw, alignw = 0, alignh = 0, vw, vh;
-
- cell->x = cx;
- cell->y = cy;
- evas_object_geometry_get(cell->wd->self, &ox, &oy, &vw, &vh);
- evas_output_viewport_get(evas_object_evas_get(cell->wd->self),
- &cvx, &cvy, &cvw, &cvh);
-
- /* Preload rows/columns at each side of the Grid */
- cvx -= PRELOAD * cell->wd->cell_width;
- cvy -= PRELOAD * cell->wd->cell_height;
- cvw += 2 * PRELOAD * cell->wd->cell_width;
- cvh += 2 * PRELOAD * cell->wd->cell_height;
-
- tch = ((vh/cell->wd->cell_height)*cell->wd->cell_height);
- alignh = (vh - tch)*cell->wd->align_y;
-
- tcw = ((vw/cell->wd->cell_width)*cell->wd->cell_width);
- alignw = (vw - tcw)*cell->wd->align_x;
-
- if (cell->wd->horizontal && cell->wd->minw < vw)
- {
- int columns;
-
- columns = eina_list_count(cell->wd->cells)/(vh/cell->wd->cell_height);
- if (eina_list_count(cell->wd->cells) % (vh/cell->wd->cell_height))
- columns++;
-
- tcw = cell->wd->cell_width * columns;
- alignw = (vw - tcw)*cell->wd->align_x;
- }
- else if (cell->wd->horizontal && cell->wd->minw > vw)
- alignw = 0;
- if (!cell->wd->horizontal && cell->wd->minh < vh)
- {
- int rows;
-
- rows = eina_list_count(cell->wd->cells)/(vw/cell->wd->cell_width);
- if (eina_list_count(cell->wd->cells) % (vw/cell->wd->cell_width))
- rows++;
-
- tch = cell->wd->cell_height * rows;
- alignh = (vh - tch)*cell->wd->align_y;
- }
- else if (!cell->wd->horizontal && cell->wd->minh > vh)
- alignh = 0;
- x = cx * cell->wd->cell_width - cell->wd->pan_x + ox + alignw;
- y = cy * cell->wd->cell_height - cell->wd->pan_y + oy + alignh;
-
- if (ELM_RECTS_INTERSECT(x, y, cell->wd->cell_width, cell->wd->cell_height,
- cvx, cvy, cvw, cvh))
- {
- Eina_Bool was_realized = cell->realized;
- _cell_realize(cell);
- if (!was_realized)
- evas_object_smart_callback_call(cell->wd->self, "realized", cell);
- evas_object_move(cell->base, x, y);
- evas_object_resize(cell->base, cell->wd->cell_width,
- cell->wd->cell_height);
- }
- else
- _cell_unrealize(cell);
-}
-
-static Elm_Grid_Cell *
-_cell_create(Widget_Data *wd, const Elm_Grid_Cell_Class *gcc,
- const void *data, Evas_Smart_Cb func, const void *func_data)
-{
- Elm_Grid_Cell *cell;
-
- cell = calloc(1, sizeof(*cell));
- if (!cell) return NULL;
- cell->wd = wd;
- cell->gcc = gcc;
- cell->data = data;
- cell->func.func = func;
- cell->func.data = func_data;
- return cell;
-}
-
-static void
-_cell_del(Elm_Grid_Cell *cell)
-{
- if (cell->selected)
- cell->wd->selected = eina_list_remove(cell->wd->selected, cell);
- if (cell->realized) _cell_unrealize(cell);
- if ((!cell->delete_me) && (cell->gcc->func.del))
- cell->gcc->func.del(cell->data, cell->wd->self);
- cell->delete_me = EINA_TRUE;
- cell->wd->cells = eina_list_remove(cell->wd->cells, cell);
- if (cell->long_timer) ecore_timer_del(cell->long_timer);
- free(cell);
-}
-
-static void
-_cell_select(Elm_Grid_Cell *cell)
-{
- if ((cell->wd->no_select) || (cell->delete_me)) return;
- if (cell->selected)
- {
- if (cell->wd->always_select) goto call;
- return;
- }
- cell->selected = EINA_TRUE;
- cell->wd->selected = eina_list_append(cell->wd->selected, cell);
-call:
- cell->walking++;
- if (cell->func.func) cell->func.func((void *)cell->func.data, cell->wd->self,
- cell);
- if (!cell->delete_me)
- evas_object_smart_callback_call(cell->wd->self, "selected", cell);
- cell->walking--;
- if ((cell->walking == 0) && (cell->delete_me))
- if (cell->relcount == 0) _cell_del(cell);
-}
-
-static void
-_cell_unselect(Elm_Grid_Cell *cell)
-{
- if ((cell->delete_me) || (!cell->hilighted)) return;
- edje_object_signal_emit(cell->base, "elm,state,unselected", "elm");
- cell->hilighted = EINA_FALSE;
- if (cell->selected)
- {
- cell->selected = EINA_FALSE;
- cell->wd->selected = eina_list_remove(cell->wd->selected, cell);
- evas_object_smart_callback_call(cell->wd->self, "unselected", cell);
- }
-}
-
-static void
-_calc_job(void *data)
-{
- Widget_Data *wd = data;
- Evas_Coord minw = 0, minh = 0, nmax = 0, cvw, cvh;
- int count;
-
- evas_output_viewport_get(evas_object_evas_get(wd->self), NULL, NULL,
- &cvw, &cvh);
- if (wd->horizontal && wd->cell_height)
- nmax = cvh / wd->cell_height;
- else if (wd->cell_width)
- nmax = cvw / wd->cell_width;
-
- if (nmax)
- {
- count = eina_list_count(wd->cells);
- if (wd->horizontal)
- {
- minw = ceil(count / (float)nmax) * wd->cell_width;
- minh = nmax * wd->cell_height;
- }
- else
- {
- minw = nmax * wd->cell_width;
- minh = ceil(count / (float)nmax) * wd->cell_height;
- }
- }
-
- if ((minw != wd->minw) || (minh != wd->minh))
- {
- wd->minh = minh;
- wd->minw = minw;
- evas_object_smart_callback_call(wd->pan_smart, "changed", NULL);
- _sizing_eval(wd->self);
- }
-
- wd->nmax = nmax;
- wd->calc_job = NULL;
- evas_object_smart_changed(wd->pan_smart);
-}
-
-static void
-_pan_add(Evas_Object *obj)
-{
- Pan *sd;
- Evas_Object_Smart_Clipped_Data *cd;
-
- _pan_sc.add(obj);
- cd = evas_object_smart_data_get(obj);
- sd = ELM_NEW(Pan);
- if (!sd) return;
- sd->__clipped_data = *cd;
- free(cd);
- evas_object_smart_data_set(obj, sd);
-}
-
-static void
-_pan_del(Evas_Object *obj)
-{
- Pan *sd = evas_object_smart_data_get(obj);
-
- if (!sd) return;
- _pan_sc.del(obj);
-}
-
-static void
-_pan_set(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- if ((x == sd->wd->pan_x) && (y == sd->wd->pan_y)) return;
- sd->wd->pan_x = x;
- sd->wd->pan_y = y;
- evas_object_smart_changed(obj);
-}
-
-static void
-_pan_get(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- if (x) *x = sd->wd->pan_x;
- if (y) *y = sd->wd->pan_y;
-}
-
-static void
-_pan_child_size_get(Evas_Object *obj, Evas_Coord *w, Evas_Coord *h)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- if (w) *w = sd->wd->minw;
- if (h) *h = sd->wd->minh;
-}
-
-static void
-_pan_max_get(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- Evas_Coord ow, oh;
-
- if (!sd) return;
- evas_object_geometry_get(obj, NULL, NULL, &ow, &oh);
- if (x)
- *x = (ow < sd->wd->minw) ? sd->wd->minw - ow : 0;
- if (y)
- *y = (oh < sd->wd->minh) ? sd->wd->minh - oh : 0;
-}
-
-static void
-_pan_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- Evas_Coord ow, oh;
-
- evas_object_geometry_get(obj, NULL, NULL, &ow, &oh);
- if ((ow == w) && (oh == h)) return;
- if (sd->wd->calc_job) ecore_job_del(sd->wd->calc_job);
- sd->wd->calc_job = ecore_job_add(_calc_job, sd->wd);
-}
-
-static void
-_pan_calculate(Evas_Object *obj)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- Evas_Coord cx = 0, cy = 0;
- Eina_List *l;
- Elm_Grid_Cell *cell;
-
- if (!sd) return;
- if (!sd->wd->nmax) return;
-
- EINA_LIST_FOREACH(sd->wd->cells, l, cell)
- {
- _cell_place(cell, cx, cy);
- if (sd->wd->horizontal)
- {
- cy = (cy + 1) % sd->wd->nmax;
- if (!cy) cx++;
- }
- else
- {
- cx = (cx + 1) % sd->wd->nmax;
- if (!cx) cy++;
- }
- }
-}
-
-static void
-_pan_move(Evas_Object *obj, Evas_Coord x __UNUSED__, Evas_Coord y __UNUSED__)
-{
- Pan *sd = evas_object_smart_data_get(obj);
- if (!sd) return;
- if (sd->wd->calc_job) ecore_job_del(sd->wd->calc_job);
- sd->wd->calc_job = ecore_job_add(_calc_job, sd->wd);
-}
-
-static void
-_hold_on(void *data __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_hold_set(wd->scr, 1);
-}
-
-static void
-_hold_off(void *data __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_hold_set(wd->scr, 0);
-}
-
-static void
-_freeze_on(void *data __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_freeze_set(wd->scr, 1);
-}
-
-static void
-_freeze_off(void *data __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
-{
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_freeze_set(wd->scr, 0);
-}
-
-static void
-_scr_drag_start(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
-{
- evas_object_smart_callback_call(data, "scroll,drag,start", NULL);
-}
-
-static void
-_scr_drag_stop(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
-{
- evas_object_smart_callback_call(data, "scroll,drag,stop", NULL);
-}
-
-static void
-_scr_scroll(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
-{
- evas_object_smart_callback_call(data, "scroll", NULL);
-}
-
-/**
- * Add a new Scrolled Grid object.
- *
- * @param parent The parent object.
- * @return The new object or NULL if it cannot be created.
- *
- * @see elm_scrolled_grid_cell_size_set()
- * @see elm_scrolled_grid_horizontal_set()
- * @see elm_scrolled_grid_cell_add()
- * @see elm_scrolled_grid_cell_del()
- * @see elm_scrolled_grid_clear()
- *
- * @ingroup Grid
- */
-EAPI Evas_Object *
-elm_scrolled_grid_add(Evas_Object *parent)
-{
- Evas_Object *obj;
- Evas *e;
- Evas_Coord minw, minh;
- Widget_Data *wd;
- static Evas_Smart *smart = NULL;
-
- wd = ELM_NEW(Widget_Data);
- e = evas_object_evas_get(parent);
- obj = elm_widget_add(e);
- ELM_SET_WIDTYPE(widtype, "grid");
- elm_widget_type_set(obj, "grid");
- elm_widget_sub_object_add(parent, obj);
- elm_widget_data_set(obj, wd);
- elm_widget_del_hook_set(obj, _del_hook);
- elm_widget_theme_hook_set(obj, _theme_hook);
-
- wd->scr = elm_smart_scroller_add(e);
- elm_smart_scroller_widget_set(wd->scr, obj);
- elm_smart_scroller_object_theme_set(obj, wd->scr, "grid", "base", "default");
- elm_widget_resize_object_set(obj, wd->scr);
-
- evas_object_smart_callback_add(wd->scr, "drag,start", _scr_drag_start, obj);
- evas_object_smart_callback_add(wd->scr, "drag,stop", _scr_drag_stop, obj);
- evas_object_smart_callback_add(wd->scr, "scroll", _scr_scroll, obj);
-
- elm_smart_scroller_bounce_allow_set(wd->scr, 1, 1);
-
- wd->self = obj;
- wd->align_x = 0.5;
- wd->align_y = 0.5;
-
- evas_object_smart_callback_add(obj, "scroll-hold-on", _hold_on, obj);
- evas_object_smart_callback_add(obj, "scroll-hold-off", _hold_off, obj);
- evas_object_smart_callback_add(obj, "scroll-freeze-on", _freeze_on, obj);
- evas_object_smart_callback_add(obj, "scroll-freeze-off", _freeze_off, obj);
-
- if (!smart)
- {
- static Evas_Smart_Class sc;
-
- evas_object_smart_clipped_smart_set(&_pan_sc);
- sc = _pan_sc;
- sc.name = "elm_scrolled_grid_pan";
- sc.version = EVAS_SMART_CLASS_VERSION;
- sc.add = _pan_add;
- sc.del = _pan_del;
- sc.resize = _pan_resize;
- sc.move = _pan_move;
- sc.calculate = _pan_calculate;
- smart = evas_smart_class_new(&sc);
- }
- if (smart)
- {
- wd->pan_smart = evas_object_smart_add(e, smart);
- wd->pan = evas_object_smart_data_get(wd->pan_smart);
- wd->pan->wd = wd;
- }
-
- elm_smart_scroller_extern_pan_set(wd->scr, wd->pan_smart,
- _pan_set, _pan_get,
- _pan_max_get, _pan_child_size_get);
-
- _sizing_eval(obj);
-
- return obj;
-}
-
-/**
- * Set the size for the cell of the Grid.
- *
- * @param obj The Grid object.
- * @param w The cell's width.
- * @param h The cell's height;
- *
- * @see elm_scrolled_grid_cell_size_get()
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_cell_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- if (wd->cell_width == w && wd->cell_height == h) return;
- wd->cell_width = w;
- wd->cell_height = h;
- if (wd->calc_job) ecore_job_del(wd->calc_job);
- wd->calc_job = ecore_job_add(_calc_job, wd);
-}
-
-/**
- * Get the size of the cell of the Grid.
- *
- * @param obj The Grid object.
- * @param w Pointer to the cell's width.
- * @param h Pointer to the cell's height.
- *
- * @see elm_scrolled_grid_cell_size_get()
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_cell_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- if (w) *w = wd->cell_width;
- if (h) *h = wd->cell_height;
-}
-
-/**
- * Set cell's alignment within the scroller.
- *
- * @param obj The grid object.
- * @param align_x The x alignment (0 <= x <= 1).
- * @param align_y The y alignment (0 <= y <= 1).
- *
- * @see elm_scrolled_grid_align_get()
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_align_set(Evas_Object *obj, double align_x, double align_y)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
-
- if (align_x > 1.0)
- align_x = 1.0;
- else if (align_x < 0.0)
- align_x = 0.0;
- wd->align_x = align_x;
-
- if (align_y > 1.0)
- align_y = 1.0;
- else if (align_y < 0.0)
- align_y = 0.0;
- wd->align_y = align_y;
-}
-
-/**
- * Get the alignenment set for the grid object.
- *
- * @param obj The grid object.
- * @param align_x Pointer to x alignenment.
- * @param align_y Pointer to y alignenment.
- *
- * @see elm_scrolled_grid_align_set()
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_align_get(const Evas_Object *obj, double *align_x, double *align_y)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (align_x) *align_x = wd->align_x;
- if (align_y) *align_y = wd->align_y;
-}
-
-/**
- * Add cell to the end of the Grid.
- *
- * @param obj The Grid object.
- * @param gcc The cell class for the cell.
- * @param data The cell data.
- * @param func Convenience function called when cell is selected.
- * @param func_data Data passed to @p func above.
- * @return A handle to the cell added or NULL if not possible.
- *
- * @see elm_scrolled_grid_cell_del()
- *
- * @ingroup Grid
- */
-EAPI Elm_Grid_Cell *
-elm_scrolled_grid_cell_add(Evas_Object *obj, const Elm_Grid_Cell_Class *gcc,
- const void *data, Evas_Smart_Cb func,
- const void *func_data)
-{
- Elm_Grid_Cell *cell;
- ELM_CHECK_WIDTYPE(obj, widtype) NULL;
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return NULL;
-
- cell = _cell_create(wd, gcc, data, func, func_data);
- if (!cell) return NULL;
-
- wd->cells = eina_list_append(wd->cells, cell);
- wd->no_select = EINA_FALSE;
-
- if (wd->calc_job) ecore_job_del(wd->calc_job);
- wd->calc_job = ecore_job_add(_calc_job, wd);
-
- return cell;
-}
-
-/**
- * Remove a cell from the Grid.
- *
- * @param cell The cell to be removed.
- * @return @c EINA_TRUE on success or @c EINA_FALSE otherwise.
- *
- * @see elm_scrolled_grid_clear() to remove all cells of the grid.
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_cell_del(Elm_Grid_Cell *cell)
-{
- if (!cell) return;
- if ((cell->relcount > 0) || (cell->walking > 0))
- {
- cell->delete_me = EINA_TRUE;
- if (cell->selected)
- cell->wd->selected = eina_list_remove(cell->wd->selected, cell);
- if (cell->gcc->func.del) cell->gcc->func.del(cell->data, cell->wd->self);
- return;
- }
-
- _cell_del(cell);
-
- if (cell->wd->calc_job) ecore_job_del(cell->wd->calc_job);
- cell->wd->calc_job = ecore_job_add(_calc_job, cell->wd);
-}
-
-/**
- * Set for what direction the grid will expand.
- *
- * @param obj The Grid object.
- * @param setting If @c EINA_TRUE the grid will expand horizontally or
- * vertically if @c EINA_FALSE.
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_horizontal_set(Evas_Object *obj, Eina_Bool setting)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- if (setting == wd->horizontal) return;
- wd->horizontal = setting;
-
- /* Update the cells to conform to the new layout */
- if (wd->calc_job) ecore_job_del(wd->calc_job);
- wd->calc_job = ecore_job_add(_calc_job, wd);
-}
-
-/**
- * Clear the Grid
- *
- * This clears all cells in the grid, leaving it empty.
- *
- * @param obj The Grid object.
- *
- * @see elm_scrolled_grid_cell_del() to remove just one cell.
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_clear(Evas_Object *obj)
-{
- Eina_List *l, *l_next;
- Elm_Grid_Cell *cell;
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
-
- if (wd->calc_job)
- {
- ecore_job_del(wd->calc_job);
- wd->calc_job = NULL;
- }
-
- EINA_LIST_FOREACH_SAFE(wd->cells, l, l_next, cell)
- {
- if (cell->realized) _cell_unrealize(cell);
- if (cell->gcc->func.del) cell->gcc->func.del(cell->data, wd->self);
- if (cell->long_timer) ecore_timer_del(cell->long_timer);
- free(cell);
- wd->cells = eina_list_remove_list(wd->cells, l);
- }
-
- if (wd->selected)
- {
- eina_list_free(wd->selected);
- wd->selected = NULL;
- }
-
- wd->pan_x = 0;
- wd->pan_y = 0;
- wd->minw = 0;
- wd->minh = 0;
- evas_object_size_hint_min_set(wd->pan_smart, wd->minw, wd->minh);
- evas_object_smart_callback_call(wd->pan_smart, "changed", NULL);
- _sizing_eval(obj);
-}
-
-/**
- * Get the real evas object of the grid cell
- *
- * This returns the actual evas object used for the specified grid cell.
- * This may be NULL as it may not be created, and may be deleted at any time
- * by grid. Do not modify this object (move, resize, show, hide etc.) as grid
- * is controlling it. This function is for querying, emitting custom signals
- * or hooking lower level callbacks for events. Do not delete this object
- * under any circumstances.
- *
- * @param cell The Grid cell.
- * @return the evas object associated to this cell.
- *
- * @see elm_scrolled_grid_cell_data_get()
- *
- * @ingroup Grid
- */
-EAPI const Evas_Object *
-elm_scrolled_grid_cell_object_get(Elm_Grid_Cell *cell)
-{
- if (!cell) return NULL;
- return cell->base;
-}
-
-/**
- * Returns the data associated to a cell
- *
- * This returns the data value passed on the elm_scrolled_grid_cell_add() and
- * related cell addition calls.
- *
- * @param cell The Grid cell.
- * @return the data associated to this cell.
- *
- * @see elm_scrolled_grid_cell_add()
- * @see elm_scrolled_grid_cell_object_get()
- *
- * @ingroup Grid
- */
-EAPI void *
-elm_scrolled_grid_cell_data_get(Elm_Grid_Cell *cell)
-{
- if (!cell) return NULL;
- return (void *)cell->data;
-}
-
-/**
- * Get the cell's coordinates.
- *
- * This returns the logical position of the cell whithin the Grid.
- *
- * @param cell The Grid cell.
- * @param x The x-axis coordinate pointer.
- * @param y The y-axis coordinate pointer.
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_cell_pos_get(const Elm_Grid_Cell *cell, unsigned int *x, unsigned int *y)
-{
- if (!cell) return;
- if (x) *x = cell->x;
- if (y) *y = cell->y;
-}
-
-/**
- * Enable or disable multi-select in the grid.
- *
- * This enables (EINA_TRUE) or disables (EINA_FALSE) multi-select in the grid.
- * This allows more than 1 cell to be selected.
- *
- * @param obj The grid object.
- * @param multi Multi-select enabled/disabled
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_multi_select_set(Evas_Object *obj, Eina_Bool multi)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- wd->multi = multi;
-}
-
-/**
- * Get if multi-select in grid is enabled or disabled
- *
- * @param obj The grid object
- * @return Multi-select enable/disable
- * (EINA_TRUE = enabled / EINA_FALSE = disabled)
- *
- * @ingroup Grid
- */
-EAPI Eina_Bool
-elm_scrolled_grid_multi_select_get(const Evas_Object *obj)
-{
- ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return EINA_FALSE;
- return wd->multi;
-}
-
-/**
- * Get the selected cell in the grid
- *
- * This gets the selected cell in the grid (if multi-select is enabled only
- * the first cell in the list is selected - which is not very useful, so see
- * elm_scrolled_grid_selected_cells_get() for when multi-select is used).
- *
- * If no cell is selected, NULL is returned.
- *
- * @param obj The grid object.
- * @return The selected cell, or NULL if none.
- *
- * @ingroup Grid
- */
-EAPI Elm_Grid_Cell *
-elm_scrolled_grid_selected_cell_get(const Evas_Object *obj)
-{
- ELM_CHECK_WIDTYPE(obj, widtype) NULL;
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return NULL;
- if (wd->selected) return wd->selected->data;
- return NULL;
-}
-
-/**
- * Get a list of selected cells in the grid.
- *
- * This returns a list of the selected cells. This list pointer is only valid
- * so long as no cells are selected or unselected (or unselected implictly by
- * deletion). The list contains Elm_Grid_Cell pointers.
- *
- * @param obj The grid object.
- * @return The list of selected cells, or NULL if none are selected.
- *
- * @ingroup Grid
- */
-EAPI const Eina_List *
-elm_scrolled_grid_selected_cells_get(const Evas_Object *obj)
-{
- ELM_CHECK_WIDTYPE(obj, widtype) NULL;
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return NULL;
- return wd->selected;
-}
-
-/**
- * Get the selected state of a cell.
- *
- * This gets the selected state of a cell (1 selected, 0 not selected).
- *
- * @param cell The cell
- * @return The selected state
- *
- * @ingroup Grid
- */
-EAPI Eina_Bool
-elm_scrolled_grid_cell_selected_get(const Elm_Grid_Cell *cell)
-{
- if (!cell) return EINA_FALSE;
- return cell->selected;
-}
-
-/**
- * Sets the disabled state of a cell.
- *
- * A disabled cell cannot be selected or unselected. It will also change
- * appearance to disabled. This sets the disabled state (1 disabled, 0 not
- * disabled).
- *
- * @param cell The cell
- * @param disabled The disabled state
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_cell_disabled_set(Elm_Grid_Cell *cell, Eina_Bool disabled)
-{
- if (!cell) return;
- if (cell->disabled == disabled) return;
- if (cell->delete_me) return;
- cell->disabled = disabled;
- if (cell->realized)
- {
- if (cell->disabled)
- edje_object_signal_emit(cell->base, "elm,state,disabled", "elm");
- else
- edje_object_signal_emit(cell->base, "elm,state,enabled", "elm");
- }
-}
-
-/**
- * Get the disabled state of a cell.
- *
- * This gets the disabled state of the given cell.
- *
- * @param cell The cell
- * @return The disabled state
- *
- * @ingroup Grid
- */
-EAPI Eina_Bool
-elm_scrolled_grid_cell_disabled_get(const Elm_Grid_Cell *cell)
-{
- if (!cell) return EINA_FALSE;
- if (cell->delete_me) return EINA_FALSE;
- return cell->disabled;
-}
-
-/**
- * Set the always select mode.
- *
- * Cells will only call their selection func and callback when first becoming
- * selected. Any further clicks will do nothing, unless you enable always select
- * with elm_scrolled_grid_always_select_mode_set(). This means even if selected,
- * every click will make the selected callbacks be called.
- *
- * @param obj The grid object
- * @param always_select The always select mode (EINA_TRUE = on, EINA_FALSE = off)
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- wd->always_select = always_select;
-}
-
-/**
- * Get the always select mode.
- *
- * @param obj The grid object.
- * @return The always select mode (EINA_TRUE = on, EINA_FALSE = off)
- *
- * @ingroup Grid
- */
-EAPI Eina_Bool
-elm_scrolled_grid_always_select_mode_get(const Evas_Object *obj)
-{
- ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return EINA_FALSE;
- return wd->always_select;
-}
-
-/**
- * Set no select mode.
- *
- * This will turn off the ability to select items entirely and they will
- * neither appear selected nor call selected callback functions.
- *
- * @param obj The grid object
- * @param no_select The no select mode (EINA_TRUE = on, EINA_FALSE = off)
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- wd->no_select = no_select;
-}
-
-/**
- * Gets no select mode.
- *
- * @param obj The grid object
- * @return The no select mode (EINA_TRUE = on, EINA_FALSE = off)
- *
- * @ingroup Grid
- */
-EAPI Eina_Bool
-elm_scrolled_grid_no_select_mode_get(const Evas_Object *obj)
-{
- ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return EINA_FALSE;
- return wd->no_select;
-}
-
-/**
- * Set bounce mode.
- *
- * This will enable or disable the scroller bounce mode for the grid. See
- * elm_scroller_bounce_set() for details.
- *
- * @param obj The grid object
- * @param h_bounce Allow bounce horizontally
- * @param v_bounce Allow bounce vertically
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_bounce_allow_set(wd->scr, h_bounce, v_bounce);
-}
-
-/**
- * Get the bounce mode
- *
- * @param obj The grid object
- * @param h_bounce Allow bounce horizontally
- * @param v_bounce Allow bounce vertically
- *
- * @ingroup Grid
- */
-EAPI void
-elm_scrolled_grid_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce)
-{
- ELM_CHECK_WIDTYPE(obj, widtype);
- Widget_Data *wd = elm_widget_data_get(obj);
- if (!wd) return;
- elm_smart_scroller_bounce_allow_get(wd->scr, h_bounce, v_bounce);
-}
#include <Elementary.h>
#include "elm_priv.h"
-/**
- * @defgroup Searchbar Searchbar
- * @ingroup Elementary
- *
- * This is Searchbar.
- * It can contain a simple entry and button object.
- */
-
typedef struct _Widget_Data Widget_Data;
struct _Widget_Data
}
-/**
- * Add a new searchbar to the parent
- * @param parent The parent object
- * @return The new object or NULL if it cannot be created
- *
- * @ingroup Searchbar
- */
EAPI Evas_Object *elm_searchbar_add(Evas_Object *parent)
{
Evas_Object *obj;
return obj;
}
-/**
- * set the text of entry
- *
- * @param obj The searchbar object
- * @return void
- *
- * @ingroup Searchbar
- */
EAPI void elm_searchbar_text_set(Evas_Object *obj, const char *entry)
{
_elm_searchbar_text_set(obj, NULL, entry);
}
-/**
- * get the text of entry
- *
- * @param obj The searchbar object
- * @return string pointer of entry
- *
- * @ingroup Searchbar
- */
EAPI const char* elm_searchbar_text_get(Evas_Object *obj)
{
return _elm_searchbar_text_get(obj, NULL);
}
-/**
- * get the pointer of entry
- *
- * @param obj The searchbar object
- * @return the entry object
- *
- * @ingroup Searchbar
- */
EAPI Evas_Object *elm_searchbar_entry_get(Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
return elm_editfield_entry_get(wd->ef);
}
-/**
- * get the pointer of editfield
- *
- * @param obj The searchbar object
- * @return the editfield object
- *
- * @ingroup Searchbar
- */
EAPI Evas_Object *elm_searchbar_editfield_get(Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
return wd->ef;
}
-/**
- * set the cancel button animation flag
- *
- * @param obj The searchbar object
- * @param cancel_btn_ani_flag The flag of animating cancen button or not
- * @return void
- *
- * @ingroup Searchbar
- */
EAPI void elm_searchbar_cancel_button_animation_set(Evas_Object *obj, Eina_Bool cancel_btn_ani_flag)
{
ELM_CHECK_WIDTYPE(obj, widtype);
else wd->cancel_btn_ani_flag = cancel_btn_ani_flag;
}
-/**
- * set the cancel button show mode
- *
- * @param obj The searchbar object
- * @param visible The flag of cancen button show or not
- * @return void
- *
- * @ingroup Searchbar
- */
EAPI void elm_searchbar_cancel_button_set(Evas_Object *obj, Eina_Bool visible)
{
ELM_CHECK_WIDTYPE(obj, widtype);
_sizing_eval(obj);
}
-/**
- * clear searchbar status
- *
- * @param obj The searchbar object
- * @return void
- *
- * @ingroup Searchbar
- */
EAPI void elm_searchbar_clear(Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype);
// elm_entry_entry_set(elm_editfield_entry_get(wd->ef), NULL);
}
-/**
- * set the searchbar boundary rect mode(with bg rect) set
- *
- * @param obj The searchbar object
- * @param boundary The present flag of boundary rect or not
- * @return void
- *
- * @ingroup Searchbar
- */
EAPI void elm_searchbar_boundary_rect_set(Evas_Object *obj, Eina_Bool boundary)
{
ELM_CHECK_WIDTYPE(obj, widtype);
_content_set_hook(Evas_Object *obj, const char *part, Evas_Object *content)
{
ELM_CHECK_WIDTYPE(obj, widtype);
- if (!part) return;
- if (!strcmp(part, "icon"))
+ if (!part || !strcmp(part, "icon"))
_icon_set(obj, content);
else if (!strcmp(part, "end"))
_end_set(obj, content);
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
- if (!part) return NULL;
wd = elm_widget_data_get(obj);
if (!wd) return NULL;
- if (!strcmp(part, "icon"))
+ if (!part || !strcmp(part, "icon"))
return wd->icon;
else if (!strcmp(part, "end"))
return wd->end;
_content_unset_hook(Evas_Object *obj, const char *part)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
- if (!part) return NULL;
- if (!strcmp(part, "icon"))
+ if (!part || !strcmp(part, "icon"))
return _icon_unset(obj);
else if (!strcmp(part, "end"))
return _end_unset(obj);
#include "elm_priv.h"
-/**
- * @defgroup Stackedicon Stackedicon
- * @ingroup Elementary
- *
- * This is a Stackedicon.
- */
-
#define MAX_ITEM_NUM (9)
#define MAX_MOVE_INTERVAL (0.2)
evas_object_event_callback_add(obj, EVAS_CALLBACK_HIDE, _hide_cb, obj);
}
-/**
- * Add a new stackedicon to the parent
- *
- * @param parent The parent object
- * @return The new object or NULL if it cannot be created
- *
- * @ingroup Stackedicon
- */
EAPI Evas_Object *
elm_stackedicon_add(Evas_Object *parent)
{
return obj;
}
-/**
- * This appends a path to the stackedicon
- *
- * @param obj The stackedicon object
- * @param path The image full path
- * @return The new item or NULL if it cannot be created
- *
- * @ingroup Stackedicon
- */
EAPI Elm_Stackedicon_Item *elm_stackedicon_item_append(Evas_Object *obj, const char *path)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
return it;
}
-/**
- * This prepends a path to the stackedicon
- *
- * @param obj The stackedicon object
- * @param path The image full path
- * @return The new item or NULL if it cannot be created
- *
- * @ingroup Stackedicon
- */
EAPI Elm_Stackedicon_Item *elm_stackedicon_item_prepend(Evas_Object *obj, const char *path)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
return it;
}
-/**
- * This delete a path at the stackedicon
- *
- * @param Elm_Stackedicon_Item The delete item
- *
- * @ingroup Stackedicon
- */
EAPI void elm_stackedicon_item_del(Elm_Stackedicon_Item *it)
{
- if (!it)return;
+ if (!it) return;
ELM_CHECK_WIDTYPE(it->parent, widtype);
Evas_Object *obj = it->parent;
Widget_Data *wd = elm_widget_data_get(obj);
_update_stackedicon(obj);
}
-/**
- * Get item list from the stackedicon
- *
- * @param obj The stackedicon object
- * @return The item list or NULL if it cannot be created
- *
- * @ingroup Stackedicon
- */
EAPI Eina_List *elm_stackedicon_item_list_get(Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
if (!wd) return NULL;
return wd->list;
}
-
if(std->p_db) eina_stringshare_del(std->p_db);
}
-/**
- * Add a new dbsystem Store object
- *
- * @return The new object or NULL if it cannot be created
- *
- * @ingroup Store
- */
EAPI Elm_Store *
elm_store_dbsystem_new(void)
{
return &std->base;
}
-/**
- * Sets the item count of a store
- *
- * @param st The store object
- * @param count The item count of an store
- *
- * @ingroup Store
- */
EAPI void
elm_store_item_count_set(Elm_Store *st, int count)
{
}
-/**
- * Set the select func that select the state of a list item whether true or false
- *
- * @param st The store object
- * @param func The select cb function of an store
- * @param data The new data pointer to set
- *
- * @ingroup Store
- */
EAPI void
elm_store_item_select_func_set(Elm_Store *st, Elm_Store_Item_Select_Cb func, const void *data)
{
st->cb.item_select.data = (void *)data;
}
-/**
- * Sets the sort func that sort the item with a next in the list
- *
- * @param st The store object
- * @param func The sort cb function of an store
- * @param data The new data pointer to set
- *
- * @ingroup Store
- */
EAPI void
elm_store_item_sort_func_set(Elm_Store *st, Elm_Store_Item_Sort_Cb func, const void *data)
{
st->cb.item_sort.data = (void *)data;
}
-/**
- * Set the store item free func
- *
- * @param st The store object
- * @param func The free cb function of an store
- * @param data The new data pointer to set
- *
- * @ingroup Store
- */
EAPI void
elm_store_item_free_func_set(Elm_Store *st, Elm_Store_Item_Free_Cb func, const void *data)
{
st->cb.item_free.data = (void *)data;
}
-/**
- * Get the item index that included header items
- *
- * @param sti The store item object
- * @return The item index in genlist
- *
- * @ingroup Store
- */
EAPI int
elm_store_item_index_get(const Elm_Store_Item *sti)
{
return -1;
}
-/**
- * Get the item index of real data that don't included header items
- *
- * @param sti The store item object
- * @return The real item index
- *
- * @ingroup Store
- */
EAPI int
elm_store_item_data_index_get(const Elm_Store_Item *sti)
{
return -1;
}
-/**
- * Get the DB pointer of an item
- *
- * @param sti The store item object
- * @return The DB pointer of item
- *
- * @ingroup Store
- */
EAPI void *
elm_store_dbsystem_db_get(const Elm_Store_Item *sti)
{
return std->p_db;
}
-/**
- * Set the DB pointer of an item
- *
- * @param sti The store item object
- * @parm p_db The DB pointer of item
- *
- * @ingroup Store
- */
EAPI void
elm_store_dbsystem_db_set(Elm_Store *store, void *p_db)
{
store, EINA_TRUE);
}
-/**
- * Append the item to the genlist
- *
- * @param st The store object
- * @param info The store item info dbsystem object
- * @return The item of store
- *
- * @ingroup Store
- */
EAPI Elm_Store_Item *
elm_store_item_add(Elm_Store *st, Elm_Store_Item_Info *info)
{
}
}
-/**
- * Realize the visible items to the screen
- *
- * @param st The store object
- *
- * @ingroup Store
- */
EAPI void
elm_store_visible_items_update(Elm_Store *st)
{
}
}
-/**
- * Realize the item to the screen
- *
- * @param sti The store item object
- *
- * @ingroup Store
- */
EAPI void
elm_store_item_update(Elm_Store_Item *sti)
{
}
}
-/**
- * Delete the item of genlist
- *
- * @param sti The store item object
- *
- * @ingroup Store
- */
EAPI void
elm_store_item_del(Elm_Store_Item *sti)
{
if(!deleted) printf(" Not deleted because it does not existed in the genlist \n");
}
}
-
-// TODO: END -DBsystem store
-
static Elm_Theme theme_default =
{
- NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1
+ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1
};
static Eina_List *themes = NULL;
eina_hash_free(th->cache);
th->cache = NULL;
}
+ if (th->cache_data)
+ {
+ eina_hash_free(th->cache_data);
+ th->cache_data = NULL;
+ }
if (th->theme)
{
eina_stringshare_del(th->theme);
return NULL;
}
+static const char *
+_elm_theme_find_data_try(Elm_Theme *th, const char *f, const char *key)
+{
+ char *data;
+ const char *t;
+
+ data = edje_file_data_get(f, key);
+ t = eina_stringshare_add(data);
+ free(data);
+ if (t)
+ {
+ eina_hash_add(th->cache, key, t);
+ return t;
+ }
+ return NULL;
+}
+
+static const char *
+_elm_theme_theme_data_try(Elm_Theme *th, const char *home, const char *f, const char *key)
+{
+ char buf[PATH_MAX];
+ const char *data = NULL;
+
+ if ((f[0] == '/') || ((f[0] == '.') && (f[1] == '/')) ||
+ ((f[0] == '.') && (f[1] == '.') && (f[2] == '/')) ||
+ ((isalpha(f[0])) && (f[1] == ':')))
+ return _elm_theme_find_data_try(th, f, key);
+ else if (((f[0] == '~') && (f[1] == '/')))
+ {
+ snprintf(buf, sizeof(buf), "%s/%s", home, f + 2);
+ return _elm_theme_find_try(th, buf, key);
+ }
+ snprintf(buf, sizeof(buf), "%s/.elementary/themes/%s.edj", home, f);
+ data = _elm_theme_find_data_try(th, buf, key);
+ if (data) return data;
+ snprintf(buf, sizeof(buf), "%s/themes/%s.edj", _elm_data_dir, f);
+ data = _elm_theme_find_data_try(th, buf, key);
+ return data;
+}
+
+static const char *
+_elm_theme_data_find(Elm_Theme *th, const char *key)
+{
+ const Eina_List *l;
+ const char *f;
+ static const char *home = NULL;
+ const char *data = eina_hash_find(th->cache_data, key);
+
+ if (data) return data;
+ if (!home)
+ {
+ home = getenv("HOME");
+ if (!home) home = "";
+ }
+ EINA_LIST_FOREACH(th->overlay, l, f)
+ {
+ data = _elm_theme_theme_data_try(th, home, f, key);
+ if (data) return data;
+ }
+ EINA_LIST_FOREACH(th->themes, l, f)
+ {
+ data = _elm_theme_theme_data_try(th, home, f, key);
+ if (data) return data;
+ }
+ EINA_LIST_FOREACH(th->extension, l, f)
+ {
+ data = _elm_theme_theme_data_try(th, home, f, key);
+ if (data) return data;
+ }
+ if (th->ref_theme) return _elm_theme_data_find(th->ref_theme, key);
+ return NULL;
+}
+
Eina_Bool
_elm_theme_object_set(Evas_Object *parent, Evas_Object *o, const char *clas, const char *group, const char *style)
{
}
if (th->cache) eina_hash_free(th->cache);
th->cache = eina_hash_string_superfast_new(EINA_FREE_CB(eina_stringshare_del));
+ if (th->cache_data) eina_hash_free(th->cache_data);
+ th->cache_data = eina_hash_string_superfast_new(EINA_FREE_CB(eina_stringshare_del));
EINA_LIST_FREE(th->themes, p) eina_stringshare_del(p);
if (!th) th = &(theme_default);
if (th->cache) eina_hash_free(th->cache);
th->cache = eina_hash_string_superfast_new(EINA_FREE_CB(eina_stringshare_del));
+ if (th->cache_data) eina_hash_free(th->cache_data);
+ th->cache_data = eina_hash_string_superfast_new(EINA_FREE_CB(eina_stringshare_del));
_elm_win_rescale(th, EINA_TRUE);
if (th->referrers)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
return elm_widget_theme_get(obj);
}
+
+EAPI const char *
+elm_theme_data_get(Elm_Theme *th, const char *key)
+{
+ if (!th) th = &(theme_default);
+ return _elm_theme_data_find(th, key);
+}
#include <Elementary.h>
#include "elm_priv.h"
-/**
- * @defgroup TickerNoti TickerNoti
- * @ingroup Elementary
- *
- * This is a notification widget which can be used to display some short information.
- */
-
typedef struct _Widget_Data Widget_Data;
struct _Widget_Data
return NULL;
}
-/**
- * Add a tickernoti object to @p parent
- *
- * @param parent The parent object
- *
- * @return The tickernoti object, or NULL upon failure
- *
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_add(Evas_Object *parent)
{
return obj;
}
-/**
- * Get the rotation of tickernoti object
- *
- * @param obj The tickernotil object
- * @return The rotation angle
- * @ingroup TickerNoti
- */
EAPI int
elm_tickernoti_rotation_get(const Evas_Object *obj)
{
return wd->angle;
}
-/**
- * Set the rotation angle for the tickernoti object
- *
- * @param obj The tickernoti object
- * @param angle The rotation angle(in degree) will be used on the tickernoti object
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_rotation_set(Evas_Object *obj, int angle)
{
elm_win_rotation_with_resize_set (wd->win, angle);
}
-/**
- * Set the orientation of the tickernoti object
- *
- * @param obj The tickernoti object
- * @param orient The orientation of tickernoti object
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_orient_set(Evas_Object *obj, Elm_Tickernoti_Orient orient)
{
#endif
}
-/**
- * Get the orientation of the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The orientation of tickernotil object
- *
- * @ingroup TickerNoti
- */
EAPI Elm_Tickernoti_Orient
elm_tickernoti_orient_get(const Evas_Object *obj)
{
return wd->orient;
}
-/**
- * Get the view window(elm_win) on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return internal view window(elm_win) object
- *
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_win_get(const Evas_Object *obj)
{
return wd->win;
}
-// ################### Below APIs are going to be removed. ###########################
-/**
- * Set the detail label on the tickernoti object
- *
- * @param obj The tickernoti object
- * @param label The label will be used on the tickernoti object
- * @deprecated use elm_object_text_set() instead
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_detailview_label_set(Evas_Object *obj, const char *label)
{
_elm_tickernoti_label_set(obj, NULL, label);
}
-/**
- * Get the detail label used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The string inside the label
- * @deprecated use elm_object_text_get() instead
- *
- * @ingroup TickerNoti
- */
EAPI const char *
elm_tickernoti_detailview_label_get(const Evas_Object *obj)
{
return _elm_tickernoti_label_get(obj, NULL);
}
-/**
- * Set the button object used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @param button The button object will be used on the tickernoti object
- * @deprecated use elm_object_content_part_set() instead with "icon" as part name
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_detailview_button_set(Evas_Object *obj, Evas_Object *button)
{
_elm_tickernoti_button_set(obj, button);
}
-
-/**
- * Get the button object used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The button object inside the tickernoti
- * @deprecated use elm_object_content_part_get() instead with "button" as part name
- *
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_detailview_button_get(const Evas_Object *obj)
{
return _elm_tickernoti_button_get(obj);
}
-/**
- * Set the detail icon object used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @param icon The icon object will be used on the tickernoti object
- * @deprecated use elm_object_content_part_set() instead with "icon" as part name
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_detailview_icon_set(Evas_Object *obj, Evas_Object *icon)
{
_elm_tickernoti_icon_set(obj, icon);
}
-/**
- * Get the detail icon object used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The icon object inside the tickernoti
- * @deprecated use elm_object_content_part_get() instead with "icon" as part name
- *
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_detailview_icon_get(const Evas_Object *obj)
{
return _elm_tickernoti_icon_get(obj);
}
-/**
- * Get the view mode on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The view mode
- * @deprecated removed as now styles are used instead
- *
- * @ingroup TickerNoti
- */
EAPI Elm_Tickernoti_Mode
elm_tickernoti_mode_get(const Evas_Object *obj)
{
return wd->mode;
}
-/**
- * Set the view mode used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @param mode The view mode will be used on the tickernoti object
- * @deprecated removed as now styles are used instead
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_mode_set(Evas_Object *obj, Elm_Tickernoti_Mode mode)
{
}
}
-/**
- * Get the detail view window(elm_win) on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return detail view window(elm_win) object
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_detailview_get(const Evas_Object *obj)
{
return elm_tickernoti_win_get(obj);
}
-/**
- * Set the orientation of the tickernoti object
- *
- * @param obj The tickernoti object
- * @param orient The orientation of tickernoti object
- * @deprecated use elm_tickernoti_orient_set() instead
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_orientation_set(Evas_Object *obj, Elm_Tickernoti_Orient orient)
{
elm_tickernoti_orient_set(obj, orient);
}
-/**
- * Get the orientation of the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The orientation of tickernotil object
- * @deprecated use elm_tickernoti_orient_get() instead
- *
- * @ingroup TickerNoti
- */
EAPI Elm_Tickernoti_Orient
elm_tickernoti_orientation_get(const Evas_Object *obj)
{
return elm_tickernoti_orient_get(obj);
}
-/**
- * Set the label on the tickernoti object
- *
- * @param obj The tickernoti object
- * @param label The label will be used on the tickernoti object
- * @deprecated use elm_object_text_get()
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_label_set(Evas_Object *obj, const char *label)
{
_elm_tickernoti_label_set(obj, NULL, label);
}
-/**
- * Get the label used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The string inside the label
- * @deprecated use elm_object_text_get() instead
- *
- * @ingroup TickerNoti
- */
EAPI const char *
elm_tickernoti_label_get(const Evas_Object *obj)
{
return _elm_tickernoti_label_get(obj, NULL);
}
-/**
- * Set the action button object used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @param button The button object will be used on the tickernoti object
- * @deprecated use elm_object_content_part_set() instead with "button" as part name
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_button_set(Evas_Object *obj, Evas_Object *button)
{
_elm_tickernoti_button_set(obj, button);
}
-/**
- * Get the action button object used on the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The button object inside the tickernoti
- * @deprecated use elm_object_content_part_get() instead with "button" as part name
- *
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_button_get(const Evas_Object *obj)
{
return _elm_tickernoti_button_get(obj);
}
-/**
- * Set the icon object of the tickernoti object
- *
- * @param obj The tickernotil object
- * @param icon The icon object will be used on the tickernoti object
- * @deprecated use elm_object_content_part_set() instead with "icon" as part name
- *
- * @ingroup TickerNoti
- */
EAPI void
elm_tickernoti_icon_set(Evas_Object *obj, Evas_Object *icon)
{
_elm_tickernoti_icon_set(obj, icon);
}
-/**
- * Get the icon object of the tickernoti object
- *
- * @param obj The tickernotil object
- * @return The icon object inside the tickernoti
- * @deprecated use elm_object_content_part_get() instead with "icon" as part name
- *
- * @ingroup TickerNoti
- */
EAPI Evas_Object *
elm_tickernoti_icon_get(const Evas_Object *obj)
{
elm_object_part_text_set(obj, "off", offlabel);
}
-
EAPI void
elm_toggle_states_labels_get(const Evas_Object *obj, const char **onlabel, const char **offlabel)
{
/* smart code here */
/* NOTE: Do not merge upstream for the if (sd->edje) { } statements
But wonder whether the edje resource icons have no problem. */
- if (sd->edje)
- {
- if (sd->prev) evas_object_del(sd->prev);
- pclip = evas_object_clip_get(sd->obj);
- if (sd->obj) sd->prev = sd->obj;
- sd->obj = evas_object_image_add(evas_object_evas_get(obj));
- evas_object_event_callback_add(sd->obj,
- EVAS_CALLBACK_IMAGE_PRELOADED,
- _preloaded, sd);
- evas_object_smart_member_add(sd->obj, obj);
- if (sd->prev) evas_object_smart_member_add(sd->prev, obj);
- evas_object_image_scale_hint_set(sd->obj,
- EVAS_IMAGE_SCALE_HINT_STATIC);
- evas_object_clip_set(sd->obj, pclip);
+ if (!sd->edje) goto out;
- sd->edje = EINA_FALSE;
- }
+ if (sd->prev) evas_object_del(sd->prev);
+ pclip = evas_object_clip_get(sd->obj);
+ if (sd->obj) sd->prev = sd->obj;
+ sd->obj = evas_object_image_add(evas_object_evas_get(obj));
+ evas_object_event_callback_add(sd->obj, EVAS_CALLBACK_IMAGE_PRELOADED,
+ _preloaded, sd);
+ evas_object_smart_member_add(sd->obj, obj);
+ if (sd->prev) evas_object_smart_member_add(sd->prev, obj);
+ evas_object_image_scale_hint_set(sd->obj, EVAS_IMAGE_SCALE_HINT_STATIC);
+ evas_object_clip_set(sd->obj, pclip);
+
+ sd->edje = EINA_FALSE;
+out:
if (!sd->size)
evas_object_image_load_size_set(sd->obj, sd->size, sd->size);
#endif
ext_mod->cnpinit(data,obj,event_info);
elm_cbhm_helper_init(obj);
- if (ext_mod->textonly)
+ if (ext_mod->cnp_mode != ELM_CNP_MODE_MARKUP)
elm_cbhm_send_raw_data("show0");
else
elm_cbhm_send_raw_data("show1");
#endif
ext_mod->cnpinit(data,obj,event_info);
elm_cbhm_helper_init(obj);
- if (ext_mod->textonly)
+ if (ext_mod->cnp_mode != ELM_CNP_MODE_MARKUP)
elm_cbhm_send_raw_data("show0");
else
elm_cbhm_send_raw_data("show1");
static void
_clipboard_menu(void *data, Evas_Object *obj, void *event_info)
{
- // start for cbhm
+ // start for cbhm
#ifdef HAVE_ELEMENTARY_X
- ecore_x_selection_secondary_set(elm_win_xwindow_get(obj), "",1);
+ ecore_x_selection_secondary_set(elm_win_xwindow_get(obj), "",1);
#endif
- ext_mod->cnpinit(data,obj,event_info);
- elm_cbhm_helper_init(obj);
- if (ext_mod->textonly)
- elm_cbhm_send_raw_data("show0");
- else
- elm_cbhm_send_raw_data("show1");
- evas_object_hide(ext_mod->popup);
- // end for cbhm
+ ext_mod->cnpinit(data,obj,event_info);
+ elm_cbhm_helper_init(obj);
+ if (ext_mod->cnp_mode != ELM_CNP_MODE_MARKUP)
+ elm_cbhm_send_raw_data("show0");
+ else
+ elm_cbhm_send_raw_data("show1");
+ evas_object_hide(ext_mod->popup);
+ // end for cbhm
}
static void