mirror of
https://github.com/geometer/FBReaderJ.git
synced 2025-10-03 09:49:19 +02:00
updated TODO, updated resources; error messages processing
This commit is contained in:
parent
8668abb956
commit
b38aef8e2e
14 changed files with 132 additions and 191 deletions
182
TODO
182
TODO
|
@ -1,182 +0,0 @@
|
||||||
***************************************************************
|
|
||||||
Из этого файла ничего не стираем
|
|
||||||
Если задача решена -- пишем DONE в начале строки
|
|
||||||
***************************************************************
|
|
||||||
|
|
||||||
ZLTextView:
|
|
||||||
DONE пометки (для найденных строк и т.п.)
|
|
||||||
DELAYED выделение текста мышкой
|
|
||||||
DELAYED прокрутка текста мышкой
|
|
||||||
переход по ссылкам
|
|
||||||
DONE внутренним
|
|
||||||
DONE внутри той же модели
|
|
||||||
DONE внешним (вызов браузера)
|
|
||||||
DONE swing
|
|
||||||
DONE android
|
|
||||||
DONE переносы
|
|
||||||
DELAYED оптимизировать место в памяти
|
|
||||||
position indicator
|
|
||||||
DONE отрисовка
|
|
||||||
DONE навигация
|
|
||||||
DONE взаимодействие с деревом
|
|
||||||
2 обработка текстов с endSection
|
|
||||||
DELAYED засечки для пунктов из оглавления
|
|
||||||
DELAYED часы
|
|
||||||
DELAYED количество прочитанных страниц
|
|
||||||
DELAYED обработка неразрывных пробелов
|
|
||||||
DONE undo/redo position stack
|
|
||||||
DELAYED обработка китайских текстов
|
|
||||||
DELAYED desktop: менять курсор над ссылкой
|
|
||||||
|
|
||||||
рисунки:
|
|
||||||
2 обработка palm'овых рисунков
|
|
||||||
DONE избавиться от многократных вычислений (ZLImageData)
|
|
||||||
|
|
||||||
форматы:
|
|
||||||
DONE fb2 (сделать чтение описания книги)
|
|
||||||
DELAYED chm
|
|
||||||
3 html
|
|
||||||
DONE oeb/epub
|
|
||||||
DELAYED openreader
|
|
||||||
DELAYED ztxt
|
|
||||||
2 palmdoc
|
|
||||||
1 plucker
|
|
||||||
DELAYED rtf
|
|
||||||
DELAYED tcr
|
|
||||||
DELAYED txt
|
|
||||||
|
|
||||||
файловая система:
|
|
||||||
архивы
|
|
||||||
DONE zip
|
|
||||||
DONE gzip
|
|
||||||
DONE tar
|
|
||||||
DELAYED bz2
|
|
||||||
|
|
||||||
диалоги (abstract):
|
|
||||||
DONE Selection
|
|
||||||
DONE открытие книги
|
|
||||||
DONE Option
|
|
||||||
DONE настройки
|
|
||||||
DONE book info
|
|
||||||
DONE MessageBox
|
|
||||||
DONE WaitMessage
|
|
||||||
DONE загрузка книги
|
|
||||||
DONE загрузка списка библиотеки
|
|
||||||
DELAYED сохранение конфига
|
|
||||||
другие
|
|
||||||
DONE диалог поиска
|
|
||||||
DONE combobox вместо поля для текста
|
|
||||||
1 multisection search
|
|
||||||
DELAYED диалог перехода на страницу по номеру
|
|
||||||
|
|
||||||
диалоги (swing):
|
|
||||||
DONE Selection
|
|
||||||
DELAYED Option
|
|
||||||
DONE MessageBox
|
|
||||||
DELAYED WaitMessage
|
|
||||||
DONE другие
|
|
||||||
|
|
||||||
диалоги (android):
|
|
||||||
DONE Selection
|
|
||||||
DONE Option
|
|
||||||
DELAYED правильное расположение парных опций
|
|
||||||
DELAYED кнопки наверху -- со стрелками влево
|
|
||||||
DONE show/hide option views
|
|
||||||
DONE boolean option view
|
|
||||||
DONE boolean3 option view
|
|
||||||
DONE spin option view
|
|
||||||
DONE string option view
|
|
||||||
DONE combo option view
|
|
||||||
DONE color option view
|
|
||||||
DONE key option view
|
|
||||||
DONE choice option view
|
|
||||||
DONE MessageBox
|
|
||||||
DONE WaitMessage
|
|
||||||
DONE другие
|
|
||||||
|
|
||||||
книги:
|
|
||||||
DONE BookDescription
|
|
||||||
DONE Collection
|
|
||||||
DONE собирать книги, лежащие в указанных каталогах в архивах
|
|
||||||
|
|
||||||
представления:
|
|
||||||
DONE CollectionView
|
|
||||||
DONE теги
|
|
||||||
DONE RecentBooksView
|
|
||||||
DONE FootnoteView
|
|
||||||
DONE не показывать ContentsView, если оглавление пустое
|
|
||||||
DONE открывать ContentsView на том разделе, который сейчас читается
|
|
||||||
|
|
||||||
конфиг:
|
|
||||||
DELAYED чтение дефолтного конфига
|
|
||||||
DELAYED не сохранять конфиг, если не было изменений!!!!!
|
|
||||||
DONE нормальная запись в десктопном варианте (без длинной-длинной строки)
|
|
||||||
DELAYED сохранение раз в 30 секунд
|
|
||||||
DONE реализация на базе sqlite (для андроида)
|
|
||||||
DELAYED оптимизация по количеству сохранений?
|
|
||||||
|
|
||||||
внешний вид:
|
|
||||||
DONE заголовок окна
|
|
||||||
DELAYED macos: название меню
|
|
||||||
DELAYED macos: иконка
|
|
||||||
DELAYED macos: корректное завершение по Command+Q
|
|
||||||
|
|
||||||
код:
|
|
||||||
DONE изменить систему названий package'й (org. -> org.geometerplus.)
|
|
||||||
DONE вставить copyright notices
|
|
||||||
DONE убрать вывод отладочной информации в андроиде
|
|
||||||
|
|
||||||
доделать все Actions:
|
|
||||||
DONE ActionCode.SHOW_BOOK_INFO
|
|
||||||
1 ActionCode.SCROLL_TO_START_OF_TEXT
|
|
||||||
1 ActionCode.SCROLL_TO_END_OF_TEXT
|
|
||||||
DONE ActionCode.OPEN_PREVIOUS_BOOK
|
|
||||||
1 ActionCode.GOTO_NEXT_TOC_SECTION
|
|
||||||
1 ActionCode.GOTO_PREVIOUS_TOC_SECTION
|
|
||||||
DELAYED ActionCode.COPY_SELECTED_TEXT_TO_CLIPBOARD
|
|
||||||
DELAYED ActionCode.OPEN_SELECTED_TEXT_IN_DICTIONARY
|
|
||||||
DELAYED ActionCode.CLEAR_SELECTION
|
|
||||||
|
|
||||||
другое:
|
|
||||||
DONE поиск
|
|
||||||
DONE поиск следующего
|
|
||||||
DONE поиск предыдущего
|
|
||||||
DONE текст в пустом CollectionView
|
|
||||||
DONE написать другой how-to-start (без иконок)
|
|
||||||
DONE написать README
|
|
||||||
1 автоопределение языка/кодировки
|
|
||||||
1 обработка разных кодировок (в хитрых форматах типа plucker)
|
|
||||||
DONE выход по escape из view, не из приложения
|
|
||||||
получение списка шрифтов в ZLPaintContext
|
|
||||||
DELAYED swing
|
|
||||||
DONE android
|
|
||||||
DELAYED полноэкранный режим
|
|
||||||
DONE tap scrolling
|
|
||||||
DONE возможность отключения
|
|
||||||
DELAYED обработка архивов в параметре командной строки
|
|
||||||
DELAYED добавлять в библиотеку книгу из командной строки
|
|
||||||
DONE xml: сделать нормальную поддержку namespace'ов
|
|
||||||
DONE xml: сделать поддержку внешних DTD (xhtml entities)
|
|
||||||
DONE fb2descriptionReader: interrupt()
|
|
||||||
DONE author sort key -> to lowercase
|
|
||||||
|
|
||||||
DONE при нажатии на кнопку выхода (в swing) и на Esc (android) закрывать текущий View, а не выходить из программы
|
|
||||||
|
|
||||||
проблемы в android:
|
|
||||||
нет возможности сделать fullscreen mode
|
|
||||||
combo box и кнопки: цвет шрифта совпадает с цветом фона, когда контрол выделен
|
|
||||||
время работы GZIPInputStream
|
|
||||||
иногда падение при загрузке большой по объему книги (креш виртуальной машины)
|
|
||||||
|
|
||||||
не сделано в андроид:
|
|
||||||
не имплементированы key and scrolling delays
|
|
||||||
text selection
|
|
||||||
засечки для пунктов из оглавления на индикаторе
|
|
||||||
часы на индикаторе
|
|
||||||
количество прочитанных страниц на индикаторе
|
|
||||||
Chinese support
|
|
||||||
не все форматы
|
|
||||||
bzip2 support
|
|
||||||
config autosaving (every 30 seconds)
|
|
||||||
go to page dialog
|
|
||||||
DONE book tags support
|
|
|
@ -1,7 +1,6 @@
|
||||||
0.99:
|
0.99:
|
||||||
DONE Run 'install ColorDict' dialog
|
DONE Run 'install ColorDict' dialog
|
||||||
DONE Synchronize resources
|
DONE Synchronize resources
|
||||||
* Other dictionary (? if there is no way to download dictionary files for ColorDict)
|
|
||||||
|
|
||||||
After 0.99:
|
After 0.99:
|
||||||
* More convenient mode changing
|
* More convenient mode changing
|
||||||
|
|
|
@ -6,8 +6,8 @@ VR:
|
||||||
|
|
||||||
NP:
|
NP:
|
||||||
DONE Локализовать все сообщения
|
DONE Локализовать все сообщения
|
||||||
* Отдельная иконка для архивов
|
DONE Отдельная иконка для архивов
|
||||||
* Отдельная иконка для каталогов, к которым нет доступа (?) -- с замочком на папке
|
DONE Отдельная иконка для каталогов, к которым нет доступа (?) -- с замочком на папке
|
||||||
DONE Архивы в архивах
|
DONE Архивы в архивах
|
||||||
DONE filesystem: return special result (exception?) if directory is not readable
|
DONE filesystem: return special result (exception?) if directory is not readable
|
||||||
* Crashes if /sdcard is removed while we browse files
|
* Crashes if /sdcard is removed while we browse files
|
||||||
|
|
|
@ -3,11 +3,9 @@
|
||||||
DONE Тестирование наличия функций без запуска тестовой Actvity
|
DONE Тестирование наличия функций без запуска тестовой Actvity
|
||||||
DONE ускорить процесс появления на экране SMS activity
|
DONE ускорить процесс появления на экране SMS activity
|
||||||
* вызывать из "глобального меню" то же, что из контекстного меню для пункта "Refill account"
|
* вызывать из "глобального меню" то же, что из контекстного меню для пункта "Refill account"
|
||||||
* сообщение про "нет информации об sms для вашего оператора"
|
DONE сообщение про "нет информации об sms для вашего оператора"
|
||||||
* Авторегистрация
|
* обработка ошибок при получении информации с data.fbreader.org
|
||||||
* Пополнение счета через sms
|
* Пополнение счета через sms
|
||||||
* Автопокупка
|
|
||||||
* 'Refill account' item should be visible iff user is logged in
|
|
||||||
* What happens if user has no enough money to buy a book?
|
* What happens if user has no enough money to buy a book?
|
||||||
* SMS account refilling
|
* SMS account refilling
|
||||||
* не задавать вопрос об установке плагина слишком часто (<= раза в неделю?)
|
* не задавать вопрос об установке плагина слишком часто (<= раза в неделю?)
|
||||||
|
@ -21,6 +19,9 @@ DONE ускорить процесс появления на экране SMS ac
|
||||||
* resources synchronization
|
* resources synchronization
|
||||||
|
|
||||||
After 0.99:
|
After 0.99:
|
||||||
|
DELAYED 'Refill account' item should be visible iff user is logged in
|
||||||
|
* Авторегистрация
|
||||||
|
* Автопокупка
|
||||||
* 'My Basket' item
|
* 'My Basket' item
|
||||||
* 'Order all the books in basket' action
|
* 'Order all the books in basket' action
|
||||||
* Auto-calculation of SMS set for given sum
|
* Auto-calculation of SMS set for given sum
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Czech FBReaderJ resources, by Marek Pavelka -->
|
<!-- Czech FBReaderJ resources, by Marek Pavelka -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Registrace uživatele" />
|
<node name="title" value="Registrace uživatele" />
|
||||||
<node name="login" value="Uživatelské jméno" />
|
<node name="login" value="Uživatelské jméno" />
|
||||||
|
@ -22,4 +26,13 @@
|
||||||
<node name="registerUser" value="Registrace nového účtu. Čekejte..." />
|
<node name="registerUser" value="Registrace nového účtu. Čekejte..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
<!-- German FBReaderJ resources, by Victor Massini -->
|
<!-- German FBReaderJ resources, by Victor Massini -->
|
||||||
<!-- Updated by Ingolf Kübler 2010/11/17 -->
|
<!-- Updated by Ingolf Kübler 2010/11/17 -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Registrierter Benutzer" />
|
<node name="title" value="Registrierter Benutzer" />
|
||||||
<node name="login" value="Benutzername" />
|
<node name="login" value="Benutzername" />
|
||||||
|
@ -23,4 +27,13 @@
|
||||||
<node name="registerUser" value="Neues Benutzerkonto wird registriert. Bitte warten..." />
|
<node name="registerUser" value="Neues Benutzerkonto wird registriert. Bitte warten..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -4,6 +4,10 @@
|
||||||
Contributors: Mathias Monnerville <mathias@monnerville.com>
|
Contributors: Mathias Monnerville <mathias@monnerville.com>
|
||||||
-->
|
-->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Inscription"/>
|
<node name="title" value="Inscription"/>
|
||||||
<node name="login" value="Identifiant"/>
|
<node name="login" value="Identifiant"/>
|
||||||
|
@ -25,4 +29,13 @@
|
||||||
<node name="registerUser" value="Inscription en cours. Veuillez patienter..."/>
|
<node name="registerUser" value="Inscription en cours. Veuillez patienter..."/>
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Hungarian FBReaderJ resources, by L. B. Szabó. Based on FBReader translation by Sándor Gábor -->
|
<!-- Hungarian FBReaderJ resources, by L. B. Szabó. Based on FBReader translation by Sándor Gábor -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Felhasználó létrehozása" />
|
<node name="title" value="Felhasználó létrehozása" />
|
||||||
<node name="login" value="Felhasználónév" />
|
<node name="login" value="Felhasználónév" />
|
||||||
|
@ -22,4 +26,13 @@
|
||||||
<node name="registerUser" value="Fiók létrehozása. Kérjük, várjon..." />
|
<node name="registerUser" value="Fiók létrehozása. Kérjük, várjon..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Italian FBReaderJ resources, by Vytek and Neoxx from AndDev.it Translate Team -->
|
<!-- Italian FBReaderJ resources, by Vytek and Neoxx from AndDev.it Translate Team -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Utente Registrato" />
|
<node name="title" value="Utente Registrato" />
|
||||||
<node name="login" value="Username" />
|
<node name="login" value="Username" />
|
||||||
|
@ -22,4 +26,13 @@
|
||||||
<node name="registerUser" value="Registrazione nuovo account. Attendere prego..." />
|
<node name="registerUser" value="Registrazione nuovo account. Attendere prego..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Ukrainian FBReaderJ resources, by Dmytro Shevchenko -->
|
<!-- Ukrainian FBReaderJ resources, by Dmytro Shevchenko -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Реєстрація нового користувача" />
|
<node name="title" value="Реєстрація нового користувача" />
|
||||||
<node name="login" value="Ім’я користувача" />
|
<node name="login" value="Ім’я користувача" />
|
||||||
|
@ -22,4 +26,13 @@
|
||||||
<node name="registerUser" value="Реєструємо користувача. Зачекайте, будь ласка..." />
|
<node name="registerUser" value="Реєструємо користувача. Зачекайте, будь ласка..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Vietnamese FBReaderJ resources, by Phạm Văn Hùng_Firestork -->
|
<!-- Vietnamese FBReaderJ resources, by Phạm Văn Hùng_Firestork -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="Đăng ký" />
|
<node name="title" value="Đăng ký" />
|
||||||
<node name="login" value="Người dùng" />
|
<node name="login" value="Người dùng" />
|
||||||
|
@ -22,4 +26,13 @@
|
||||||
<node name="registerUser" value="Đang đăng ký tài khoản. Xin chờ..." />
|
<node name="registerUser" value="Đang đăng ký tài khoản. Xin chờ..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Chinese FBReaderJ resources, by http://shucang.com/ -->
|
<!-- Chinese FBReaderJ resources, by http://shucang.com/ -->
|
||||||
<resources>
|
<resources>
|
||||||
|
<node name="smsDialog">
|
||||||
|
<node name="title" value="Refill account via SMS" toBeTranslated="true" />
|
||||||
|
<node name="youPay" value="You pay %s" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
<node name="userRegistration">
|
<node name="userRegistration">
|
||||||
<node name="title" value="注册用户" />
|
<node name="title" value="注册用户" />
|
||||||
<node name="login" value="用户名" />
|
<node name="login" value="用户名" />
|
||||||
|
@ -22,4 +26,13 @@
|
||||||
<node name="registerUser" value="正在注册新账号,请稍等..." />
|
<node name="registerUser" value="正在注册新账号,请稍等..." />
|
||||||
</node>
|
</node>
|
||||||
</node>
|
</node>
|
||||||
|
<node name="dialog">
|
||||||
|
<node name="button">
|
||||||
|
<node name="sendSms" value="Send text" toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
<node name="sendSmsDialog">
|
||||||
|
<node name="title" value="Send text" toBeTranslated="true" />
|
||||||
|
<node name="message" value="Text message that costs %s0 will be send. %s1 will be added to your account. Your text will be processed in several minutes." toBeTranslated="true" />
|
||||||
|
</node>
|
||||||
|
</node>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -39,4 +39,15 @@
|
||||||
android:layout_marginBottom="4dip"
|
android:layout_marginBottom="4dip"
|
||||||
android:layout_above="@id/sms_buttons"
|
android:layout_above="@id/sms_buttons"
|
||||||
/>
|
/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/sms_error"
|
||||||
|
android:layout_width="fill_parent"
|
||||||
|
android:layout_height="fill_parent"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_marginLeft="10dip"
|
||||||
|
android:layout_marginRight="10dip"
|
||||||
|
android:layout_marginBottom="4dip"
|
||||||
|
android:layout_above="@id/sms_buttons"
|
||||||
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
|
/>
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
|
@ -111,8 +111,11 @@ public class SmsRefillingActivity extends Activity {
|
||||||
|
|
||||||
private void setupListView() {
|
private void setupListView() {
|
||||||
final ListView listView = (ListView)findViewById(R.id.sms_list);
|
final ListView listView = (ListView)findViewById(R.id.sms_list);
|
||||||
|
final TextView errorPane = (TextView)findViewById(R.id.sms_error);
|
||||||
|
|
||||||
final TelephonyManager manager = (TelephonyManager)getSystemService(Activity.TELEPHONY_SERVICE);
|
final TelephonyManager manager = (TelephonyManager)getSystemService(Activity.TELEPHONY_SERVICE);
|
||||||
if (manager != null) {
|
if (manager != null) {
|
||||||
|
//final String operator = manager.getNetworkOperator();
|
||||||
final String operator = manager.getNetworkOperator();
|
final String operator = manager.getNetworkOperator();
|
||||||
// TODO: compare with SIM operator
|
// TODO: compare with SIM operator
|
||||||
// TODO: Error if there is no operator
|
// TODO: Error if there is no operator
|
||||||
|
@ -129,8 +132,13 @@ public class SmsRefillingActivity extends Activity {
|
||||||
public void handleStream(URLConnection connection, InputStream inputStream) throws IOException, ZLNetworkException {
|
public void handleStream(URLConnection connection, InputStream inputStream) throws IOException, ZLNetworkException {
|
||||||
final SmsInfoXMLReader reader = new SmsInfoXMLReader();
|
final SmsInfoXMLReader reader = new SmsInfoXMLReader();
|
||||||
reader.read(inputStream);
|
reader.read(inputStream);
|
||||||
|
if (reader.Infos.size() > 0) {
|
||||||
listView.setAdapter(new SmsListAdapter(reader.Infos));
|
listView.setAdapter(new SmsListAdapter(reader.Infos));
|
||||||
listView.invalidateViews();
|
errorPane.setVisibility(View.GONE);
|
||||||
|
} else {
|
||||||
|
errorPane.setText(reader.ErrorMessage);
|
||||||
|
listView.setVisibility(View.GONE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} catch (ZLNetworkException e) {
|
} catch (ZLNetworkException e) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue