mirror of
https://github.com/Ralim/IronOS.git
synced 2025-07-23 04:13:01 +02:00
Add option to swap A / B buttons in Settings menu (#2059)
* Add option to swap A / B buttons in Settings menu --------- Co-authored-by: Ivan Zorin <ivan.a.zorin@gmail.com>
This commit is contained in:
@@ -272,9 +272,13 @@
|
||||
"description": "Хуткасць гартання тэксту (М=марудна | Х=хутка)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Інвертаваць\nкнопкі",
|
||||
"displayText": "Інвертаваць\nкнопкі +/-",
|
||||
"description": "Інвертаваць кнопкі вымярэння тэмпературы"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Інвертаваць\nкнопкі A/B",
|
||||
"description": "Інвертаваць кнопкі навігацыі ў меню"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Хуткасць\nанімацыі",
|
||||
"description": "Хуткасць анімацыі гузікаў у галоўным меню (Мілісекунды) (Н=Нізкая | С=Сярэдняя | В=Высокая)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Размяна\nбутони +/-",
|
||||
"description": "Обръщане на бутоните + и - за промяна на температурата на човка на поялника"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Размяна\nбутони А/В",
|
||||
"description": "Обръщане бутоните А и В за навигация в менютата"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Скорост на\nанимацията",
|
||||
"description": "Скорост на анимация на иконата в главното меню (Н=Ниска | C=Средна | B=Висока)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Prohodit\ntl. +-?",
|
||||
"description": "Prohodit tlačítka pro změnu teploty"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nrychlost",
|
||||
"description": "Tempo animace ikon v menu (P=pomalu | S=středně | R=rychle)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Skift\n+ - tasterne",
|
||||
"description": "Skift tildeling af knapper til temperaturjustering"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nHastighed",
|
||||
"description": "Hastigheden for ikonanimationer i menuen (S=langsomt | M=medium | F=hurtigt)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "+- Tasten\numkehren",
|
||||
"description": "Tastenbelegung zur Temperaturänderung umkehren"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nGeschw.",
|
||||
"description": "Geschwindigkeit der Icon-Animationen im Menü (L=langsam | M=mittel | S=schnell)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Αντιστροφή\nπλήκτρων + -",
|
||||
"description": "Αντιστροφή διάταξης πλήκτρων στη ρύθμιση θερμοκρασίας"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Ταχύτητα\nκιν. εικονιδ.",
|
||||
"description": "Ρυθμός κίνησης εικονιδίων στο μενού (Α=αργός | Μ=μέτριος | Γ=γρήγορος)"
|
||||
|
@@ -272,9 +272,13 @@
|
||||
"description": "Scrolling speed of info text (S=slow | F=fast)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Swap\n+ - keys",
|
||||
"displayText": "Swap\n+/- keys",
|
||||
"description": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nspeed",
|
||||
"description": "Pace of icon animations in menu (S=slow | M=medium | F=fast)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Invertir\nbotones +/-",
|
||||
"description": "Invertir botones de ajuste de temperatura"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nvelocidad",
|
||||
"description": "Velocidad de animaciones de iconos en el menú (L=baja | M=media | R=alta)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Vaheta\n+ - nupud",
|
||||
"description": "Temperatuurinuppude asukohtade vahetus"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nkiirus",
|
||||
"description": "Menüüikoonide animatsiooni kiirus (A=aeglane | K=keskmine | T=tempokas)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Suunnanvaihto\n+ - näppäimille",
|
||||
"description": "Lämpötilapainikkeiden suunnan vaihtaminen"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Animaation\nnopeus",
|
||||
"description": "Animaatioiden nopeus valikossa (A=alhainen | K=keskiverto | S=suuri)"
|
||||
|
@@ -272,9 +272,13 @@
|
||||
"description": "Vitesse de défilement du texte (R=rapide | L=lent)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Inverser les\ntouches + -",
|
||||
"displayText": "Inverser les\ntouches +/-",
|
||||
"description": "Inverser les boutons d'ajustement de température"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Inverser les\ntouches A/B",
|
||||
"description": "Inverser les boutons de navigation du menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Vitesse\nanim. icônes",
|
||||
"description": "Vitesse des animations des icônes dans le menu (L=lente | M=moyenne | R=rapide)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Zamjena\n+ - tipki",
|
||||
"description": "Zamjenjuje funkciju gornje i donje tipke za podešavanje temperature"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Brzina\nanimacije",
|
||||
"description": "Brzina animacije ikona u menijima (S=sporo | M=srednje | B=brzo)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "+/- gomb\nmegfordítása",
|
||||
"description": "Forrasztó hegy hőmérsékletállító gombok felcserélése"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Animáció\nsebessége",
|
||||
"description": "Menüikonok animációjának sebessége (L=lassú | K=közepes | Gy=gyors)"
|
||||
|
@@ -272,9 +272,13 @@
|
||||
"description": "Imposta la velocità di scorrimento del testo [L: lenta; V: veloce]"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Inversione\ntasti",
|
||||
"displayText": "Inversione\ntasti +/-",
|
||||
"description": "Inverti i tasti per aumentare o diminuire la temperatura della punta"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Inversione\ntasti A/B",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Velocità\nanimazioni",
|
||||
"description": "Imposta la velocità di riproduzione delle animazioni del menù principale [L: lenta; M: media; V: veloce]"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "キー入れ替え",
|
||||
"description": "温度設定時に+ボタンと-ボタンを入れ替える"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "動画の速度",
|
||||
"description": "メニューアイコンのアニメーションの速さ <遅=低速 | 中=中速 | 速=高速>"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Sukeisti + -\nmygtukus?",
|
||||
"description": "Sukeisti + - temperatūros keitimo mygtukus vietomis"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Animacijų\ngreitis",
|
||||
"description": "Paveiksliukų animacijų greitis meniu punktuose (L=Lėtas | V=Vidutinis | G=Greitas)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Bytt\n+ - kn.",
|
||||
"description": "Bytt om på knappene for å stille temperatur"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nhastighet",
|
||||
"description": "Hastigheten til animasjonene i menyen (S=slow | M=medium | F=fast)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Wissel\n+ - knoppen",
|
||||
"description": "Wissel de knoppen voor temperatuur controle om"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nsnelheid",
|
||||
"description": "Snelheid van de icoon animaties in het menu (Langzaam | Middel | Snel)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Wissel\n+ - knoppen",
|
||||
"description": "Wissel de knoppen voor temperatuur controle"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nsnelheid",
|
||||
"description": "Snelheid van de icoon animaties in het menu (T=sloom | M=middel | S=snel)"
|
||||
|
@@ -272,9 +272,13 @@
|
||||
"description": "Szybkość przewijania tekstu"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Zamień przyc.\n+ -",
|
||||
"displayText": "Zamień przyc.\n+/-",
|
||||
"description": "Zamienia działanie przycisków zmiany temperatury grotu"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Zamień przyc.\nA/B",
|
||||
"description": "Zamienia działanie przycisków nawigacyjne menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Prędkosć\nanimacji",
|
||||
"description": "Prędkość animacji ikon w menu (W: mała | M: średnia | S: duża)"
|
||||
|
@@ -272,9 +272,13 @@
|
||||
"description": "Velocidade a que o texto de ajuda é apresentado"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Trocar\nbotões + -",
|
||||
"displayText": "Trocar\nbotões +/-",
|
||||
"description": "Inverte o funcionamento dos botões de ajuste da temperatura"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Velocidade\nde animação",
|
||||
"description": "Velocidade das animações no menu (S=lenta | M=média | F=rápida)"
|
||||
|
@@ -272,9 +272,13 @@
|
||||
"description": "Viteză derulare text cu informatii la (S=lent | F=rapid)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Inversare\n+ - butoane",
|
||||
"displayText": "Inversare\n+/- butoane",
|
||||
"description": "Inversarea butoanelor de reglare a temperaturii"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Animaţii\nviteză",
|
||||
"description": "Ritmul animaţiilor pictogramei din meniu (Î=încet | M=mediu | R=rapid)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Поменять\nкнопки +/-",
|
||||
"description": "Поменять кнопки изменения температуры"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Скорость\nанимации",
|
||||
"description": "Скорость анимации иконок в главном меню (М=Медленная| С=Средняя | Б=Быстрая)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Otočenie\ntlačidiel +/-",
|
||||
"description": "Prehodenie tlačidiel na nastavovanie teploty"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Rýchlosť\nanimácií",
|
||||
"description": "Rýchlosť animácií ikoniek v menu (P=pomaly | S=stredne | R=rýchlo)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Obrni\ntipki + -?",
|
||||
"description": "Zamenjaj funkciji gumbov."
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nspeed",
|
||||
"description": "Pace of icon animations in menu (P=slow | M=medium | H=fast)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Swap\n+ - keys",
|
||||
"description": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nspeed",
|
||||
"description": "Pace of icon animations in menu (С=slow | M=medium | Б=fast)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Swap\n+ - keys",
|
||||
"description": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\nspeed",
|
||||
"description": "Pace of icon animations in menu (S=slow | M=medium | B=fast)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Omvända\n+- knappar",
|
||||
"description": "Omvänd ordning för temperaturjustering via plus/minus knapparna"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.-\nhastighet",
|
||||
"description": "Animationshastighet för ikoner i menyer (L=långsam | M=medel | S=snabb)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Düğme Yerleri\nRotasyonu",
|
||||
"description": "\"Düğme Yerleri Rotasyonu\" Sıcaklık ayar düğmelerinin yerini değiştirin"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Animasyon\nHızı",
|
||||
"description": "Menüdeki simge animasyonlarının hızı (Y=Yavaş | O=Orta | H=Hızlı)"
|
||||
|
@@ -34,7 +34,7 @@
|
||||
"message": "!Жало закорочено!"
|
||||
},
|
||||
"SettingsCalibrationWarning": {
|
||||
"message": "Під час наступного завантаження переконайтеся, що жало і ручка мають кімнатну температуру!"
|
||||
"message": "Під час наступного завантаження переконайтеся, що жало і ручка мають кімнатну t°!"
|
||||
},
|
||||
"CJCCalibrating": {
|
||||
"message": "калібрування\n"
|
||||
@@ -97,7 +97,7 @@
|
||||
"description": ""
|
||||
},
|
||||
"UIMenu": {
|
||||
"displayText": "Параметри\nінтерфейсу",
|
||||
"displayText": "Параметри\nвзаємодії",
|
||||
"description": ""
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
@@ -153,23 +153,23 @@
|
||||
},
|
||||
"USBPDMode": {
|
||||
"displayText": "PD\nРежим",
|
||||
"description": "Вмикає режими PPS & EPR."
|
||||
"description": "Вмикає режими PPS & EPR"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"displayText": "Темпер.\nТурбо",
|
||||
"description": "Температура \"Турбо\" режиму"
|
||||
"description": "t° у \"Турбо\" режимі"
|
||||
},
|
||||
"AutoStart": {
|
||||
"displayText": "Гарячий\nстарт",
|
||||
"description": "Режим запуску паяльника (П=Пайка | С=Сон | К=Сон при кімн. темп.)"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"displayText": "Зміна темп.\nкоротким",
|
||||
"description": "Зміна температуру при короткому натисканні!"
|
||||
"displayText": "Зміна t°\nкоротким",
|
||||
"description": "Крок t° при короткому натисканні:"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"displayText": "Зміна темп.\nдовгим",
|
||||
"description": "Зміна температуру при довгому натисканні!"
|
||||
"displayText": "Зміна t°\nдовгим",
|
||||
"description": "Крок t° при довгому натисканні:"
|
||||
},
|
||||
"LockingMode": {
|
||||
"displayText": "Дозволити\nблок. кнопок",
|
||||
@@ -180,8 +180,8 @@
|
||||
"description": "Кількість етапів в режимі профілів"
|
||||
},
|
||||
"ProfilePreheatTemp": {
|
||||
"displayText": "Температура\nПоп.Розігріву",
|
||||
"description": "Попередньо розігріти до цієї температури на початку режимку профілів"
|
||||
"displayText": "t° Поперед.\nРозігріву",
|
||||
"description": "Попередньо розігріти до цієї t° на початку режимку профілів"
|
||||
},
|
||||
"ProfilePreheatSpeed": {
|
||||
"displayText": "Швидкість\nПоп.Розігріву",
|
||||
@@ -189,7 +189,7 @@
|
||||
},
|
||||
"ProfilePhase1Temp": {
|
||||
"displayText": "Етап 1\nТемпература",
|
||||
"description": "Температура на кінці цього етапу"
|
||||
"description": "t° на кінці цього етапу"
|
||||
},
|
||||
"ProfilePhase1Duration": {
|
||||
"displayText": "Етап 1\nТривалість",
|
||||
@@ -233,11 +233,11 @@
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"displayText": "Чутливість\nдатчику руху",
|
||||
"description": "Акселерометр (1=мін. чутливості | ... | 9=макс. чутливість)"
|
||||
"description": "Акселерометр (1=мін. чутливість | ... | 9=макс. чутливість)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"displayText": "Темпер.\nсну",
|
||||
"description": "Температура режиму сну (C° | F°)"
|
||||
"description": "t° у режимі сну"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"displayText": "Тайм-аут\nсну",
|
||||
@@ -256,8 +256,8 @@
|
||||
"description": "Проміжок часу до \"часу сну\" за умови спрацювання датчику Холла"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"displayText": "Формат темпе-\nратури(C°/F°)",
|
||||
"description": "Одиниця виміру температури (C=Цельсій | F=Фаренгейт)"
|
||||
"displayText": "Формат темпе-\nратури(°C/°F)",
|
||||
"description": "Одиниця виміру t° (C=Цельсій | F=Фаренгейт)"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"displayText": "Обертання\nекрану",
|
||||
@@ -265,15 +265,19 @@
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"displayText": "Показ t° при\nохолодженні",
|
||||
"description": "Показувати температуру на екрані охолодження, поки жало залишається гарячим, при цьому екран мерехтить"
|
||||
"description": "Показувати t° на екрані охолодження, доки жало залишається гарячим, при цьому екран мерехтить"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"displayText": "Швидкість\nтексту",
|
||||
"description": "Швидкість прокрутки тексту (Н=Низькa | М=Максимальна)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"displayText": "Інвертувати\nкнопки +-?",
|
||||
"description": "Інвертувати кнопки зміни температури."
|
||||
"displayText": "Обернути\nкнопки +/-?",
|
||||
"description": "Обернути кнопки зміни t°"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Обернути\nкнопки A/B?",
|
||||
"description": "Обернути кнопки навігації"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Швидкість\nанімації",
|
||||
@@ -288,20 +292,20 @@
|
||||
"description": "Налаштування контрасту/яскравості OLED екрану"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"displayText": "Інверт\nекрану",
|
||||
"description": "Інвертувати кольори на OLED екрані"
|
||||
"displayText": "Обернути\nкольори",
|
||||
"description": "Обернути кольори на OLED екрані"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"displayText": "Тривалість\nлоготипу при запуску",
|
||||
"description": "Поточна тривалість показу лого при запуску (сек)"
|
||||
"displayText": "Тривалість\nекр лого",
|
||||
"description": "Поточна тривалість лого при запуску (сек)"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"displayText": "Детальний ре-\nжим очікуван.",
|
||||
"description": "Показувати детальну інформацію маленьким шрифтом на домашньому екрані"
|
||||
"displayText": "Детальний\nрежим сну",
|
||||
"description": "Показувати детальну інформацію дрібним шрифтом на домашньому екрані"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"displayText": "Детальний\nрежим пайки",
|
||||
"description": "Показувати детальну інформацію при пайці."
|
||||
"description": "Показувати детальну інформацію при пайці"
|
||||
},
|
||||
"BluetoothLE": {
|
||||
"displayText": "Bluetooth\n",
|
||||
@@ -309,19 +313,19 @@
|
||||
},
|
||||
"PowerLimit": {
|
||||
"displayText": "Макс.\nпотуж.",
|
||||
"description": "Макс. потужність, яку може використовувати паяльник (Ватт)"
|
||||
"description": "Макс. потужність живлення паяльника (Ватт)"
|
||||
},
|
||||
"CalibrateCJC": {
|
||||
"displayText": "Калібрувати КХС\nпри наступному запуску",
|
||||
"description": "При наступному запуску буде відкалібровано Компенсацію Холодного Спаю жала (непотрібне при різниці температур < 5°C)"
|
||||
"displayText": "Калібрація КХС\n",
|
||||
"description": "При наступному запуску буде відкалібровано Компенсацію Холодного Спаю жала (непотрібне при Δt° < 5°C)"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"displayText": "Калібрування\nнапруги",
|
||||
"description": "Калібрування напруги входу. Налаштувати кнопками, натиснути і утримати щоб завершити."
|
||||
"description": "Калібрування напруги входу. Налаштувати кнопками, натиснути і утримати щоб завершити"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"displayText": "Пульс.\nНавантаж.",
|
||||
"description": "Деякі PowerBank-и з часом вимк. живлення, якщо пристрій споживає дуже мало енергії)"
|
||||
"description": "Деякі PowerBank-и з часом вимк. живлення, якщо пристрій споживає замало енергії)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"displayText": "Час між імп.\nнапруги",
|
||||
@@ -333,14 +337,14 @@
|
||||
},
|
||||
"SettingsReset": {
|
||||
"displayText": "Скинути всі\nналаштування?",
|
||||
"description": "Скидання всіх параметрів до стандартних значень."
|
||||
"description": "Скидання всіх параметрів до стандартних значень"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"displayText": "Мова:\n UK Українська",
|
||||
"description": ""
|
||||
},
|
||||
"SolderingTipType": {
|
||||
"displayText": "Тип Жала",
|
||||
"displayText": "Тип\nЖала",
|
||||
"description": "Оберіть відповідний тип жала"
|
||||
}
|
||||
}
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "(+) va (-) tugmalarni\nalmashtirish",
|
||||
"description": "Harorat o'zgarishi uchun tugmachalarni vazifasini almashish"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Anim.\ntezligi",
|
||||
"description": "Menyudagi ikonka animatsiyalari tezligini sozlash (S=sekin | O=o'rtacha | T=tez)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "Đao nguoc\nnút + -",
|
||||
"description": "Đao nguoc chuc năng các nút đieu chinh nhiet đo"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "Toc đo\nhoat anh",
|
||||
"description": "Toc đo cua hoat anh menu (S=cham | M=trung bình | F=nhanh)"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "反轉加減掣",
|
||||
"description": "反轉調校温度時加減掣嘅方向"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "動畫速度",
|
||||
"description": "功能表圖示動畫嘅速度 <慢=慢速 | 中=中速 | 快=快速>"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "调换加减键",
|
||||
"description": "调校温度时更换加减键的方向"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "动画速度",
|
||||
"description": "主菜单中功能图标动画的播放速度 <慢=慢速 | 中=中速 | 快=快速>"
|
||||
|
@@ -275,6 +275,10 @@
|
||||
"displayText": "調換加減鍵",
|
||||
"description": "調校溫度時調換加減鍵的方向"
|
||||
},
|
||||
"ReverseButtonMenu": {
|
||||
"displayText": "Swap\nA/B keys",
|
||||
"description": "Reverse assignment of buttons for Settings menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"displayText": "動畫速度",
|
||||
"description": "功能表圖示動畫的速度 <慢=慢速 | 中=中速 | 快=快速>"
|
||||
|
@@ -473,6 +473,12 @@
|
||||
"maxLen2": 15,
|
||||
"description": "Swaps which button increments and decrements on temperature change screens."
|
||||
},
|
||||
{
|
||||
"id": "ReverseButtonMenu",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 15,
|
||||
"description": "Swaps which buttons are used as Enter/Change and which as Scroll/Back in the settings menu."
|
||||
},
|
||||
{
|
||||
"id": "AnimSpeed",
|
||||
"maxLen": 6,
|
||||
|
15
patches/README.md
Normal file
15
patches/README.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# patches/
|
||||
|
||||
This directory contains patches with code placed out of the main source tree for various reasons.
|
||||
|
||||
|
||||
## Content
|
||||
|
||||
- `swap-buttons-fully.diff`: swap two buttons on supported hardware **completely** (see [here](https://github.com/Ralim/IronOS/pull/2059) for more details).
|
||||
|
||||
|
||||
## Instruction
|
||||
|
||||
- pick any patch and apply it like this from the root source tree: `$ patch -p1 < ./patches/name-of-the-patch.diff`;
|
||||
- make a build as usual.
|
||||
|
187
patches/swap-buttons-fully.diff
Normal file
187
patches/swap-buttons-fully.diff
Normal file
@@ -0,0 +1,187 @@
|
||||
diff --git a/source/Core/Threads/GUIThread.cpp b/source/Core/Threads/GUIThread.cpp
|
||||
index 5be04951..58cdaf9c 100644
|
||||
--- a/source/Core/Threads/GUIThread.cpp
|
||||
+++ b/source/Core/Threads/GUIThread.cpp
|
||||
@@ -46,8 +46,13 @@ OperatingMode guiHandleDraw(void) {
|
||||
OLED::clearScreen(); // Clear ready for render pass
|
||||
bool swapButtonMenu = getSettingValue(SettingsOptions::ReverseButtonMenu);
|
||||
bool swapButtonTemp = getSettingValue(SettingsOptions::ReverseButtonTempChangeEnabled);
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ bool isTempAdjust = currentOperatingMode == OperatingMode::TemperatureAdjust;
|
||||
// Read button state
|
||||
+ ButtonState buttons = getButtonState((swapButtonTemp && isTempAdjust) || (swapButtonMenu && !swapButtonTemp && !isTempAdjust) || (swapButtonMenu && swapButtonTemp && !isTempAdjust));
|
||||
+#else
|
||||
ButtonState buttons = getButtonState();
|
||||
+#endif
|
||||
// Enforce screen on if buttons pressed, movement, hot tip etc
|
||||
if (buttons != BUTTON_NONE) {
|
||||
OLED::setDisplayState(OLED::DisplayState::ON);
|
||||
@@ -113,7 +118,11 @@ OperatingMode guiHandleDraw(void) {
|
||||
newMode = gui_SolderingSleepingMode(buttons, &context);
|
||||
break;
|
||||
case OperatingMode::TemperatureAdjust:
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ newMode = gui_solderingTempAdjust(getButtonState(), &context);
|
||||
+#else
|
||||
newMode = gui_solderingTempAdjust(getButtonState(swapButtonTemp), &context);
|
||||
+#endif
|
||||
break;
|
||||
case OperatingMode::DebugMenuReadout:
|
||||
newMode = showDebugMenu(buttons, &context);
|
||||
@@ -122,7 +131,11 @@ OperatingMode guiHandleDraw(void) {
|
||||
newMode = performCJCC(buttons, &context);
|
||||
break;
|
||||
case OperatingMode::SettingsMenu:
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ newMode = gui_SettingsMenu(getButtonState(), &context);
|
||||
+#else
|
||||
newMode = gui_SettingsMenu(getButtonState(swapButtonMenu), &context);
|
||||
+#endif
|
||||
break;
|
||||
case OperatingMode::InitialisationDone:
|
||||
newMode = handle_post_init_state();
|
||||
diff --git a/source/Core/Threads/UI/drawing/mono_128x32/draw_homescreen_simplified.cpp b/source/Core/Threads/UI/drawing/mono_128x32/draw_homescreen_simplified.cpp
|
||||
index 7064e9ba..cf69795e 100644
|
||||
--- a/source/Core/Threads/UI/drawing/mono_128x32/draw_homescreen_simplified.cpp
|
||||
+++ b/source/Core/Threads/UI/drawing/mono_128x32/draw_homescreen_simplified.cpp
|
||||
@@ -9,21 +9,42 @@ extern uint8_t disconnectedTipF[sizeof(disconnectedTip)];
|
||||
void ui_draw_homescreen_simplified(TemperatureType_t tipTemp) {
|
||||
bool isFlipped = OLED::getRotation();
|
||||
bool tipDisconnected = isTipDisconnected();
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ bool swapButtonMenu = getSettingValue(SettingsOptions::ReverseButtonMenu);
|
||||
+#endif
|
||||
|
||||
// Flip and switch buttons accordingly
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ OLED::drawArea(isFlipped ? 68 : 0, 0, 56, 32, isFlipped ? (swapButtonMenu ? buttonBF : buttonAF) : (swapButtonMenu ? buttonB : buttonA));
|
||||
+ OLED::drawArea(isFlipped ? 12 : 58, 0, 56, 32, isFlipped ? (swapButtonMenu ? buttonAF : buttonBF) : (swapButtonMenu ? buttonA : buttonB));
|
||||
+#else
|
||||
OLED::drawArea(isFlipped ? 68 : 0, 0, 56, 32, isFlipped ? buttonAF : buttonA);
|
||||
OLED::drawArea(isFlipped ? 12 : 58, 0, 56, 32, isFlipped ? buttonBF : buttonB);
|
||||
+#endif
|
||||
|
||||
if ((tipTemp > 55) || tipDisconnected) {
|
||||
// draw temp over the start soldering button
|
||||
// Location changes on screen rotation and due to button swapping
|
||||
// in right handed mode we want to draw over the first part
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ OLED::fillArea(swapButtonMenu ? (isFlipped ? 26 : 58) : (isFlipped ? 68 : 0), 0, 56, 32, 0); // clear the area
|
||||
+ OLED::setCursor(swapButtonMenu ? (isFlipped ? 27 : 59) : (isFlipped ? 56 : 0), 0);
|
||||
+#else
|
||||
OLED::fillArea(isFlipped ? 68 : 0, 0, 56, 32, 0); // clear the area
|
||||
OLED::setCursor(isFlipped ? 56 : 0, 0);
|
||||
+#endif
|
||||
// If tip is disconnected draw the notification, otherwise - the temp
|
||||
if (tipDisconnected) {
|
||||
// Draw-in the missing tip symbol
|
||||
- OLED::drawArea(isFlipped ? 54 : 0, 0, 56, 32, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ if (swapButtonMenu) {
|
||||
+ OLED::drawArea(isFlipped ? 20 : 54, 0, 56, 32, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
+ } else {
|
||||
+#endif
|
||||
+ OLED::drawArea(isFlipped ? 54 : 0, 0, 56, 32, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ }
|
||||
+#endif
|
||||
} else if (!(getSettingValue(SettingsOptions::CoolingTempBlink) && (xTaskGetTickCount() % 1000 < 300))) {
|
||||
ui_draw_tip_temperature(false, FontStyle::LARGE); // Draw-in the temp
|
||||
}
|
||||
@@ -31,5 +52,4 @@ void ui_draw_homescreen_simplified(TemperatureType_t tipTemp) {
|
||||
OLED::setCursor(isFlipped ? 0 : 116, 0);
|
||||
ui_draw_power_source_icon();
|
||||
}
|
||||
-
|
||||
#endif
|
||||
diff --git a/source/Core/Threads/UI/drawing/mono_96x16/draw_homescreen_simplified.cpp b/source/Core/Threads/UI/drawing/mono_96x16/draw_homescreen_simplified.cpp
|
||||
index 7a353478..870ef639 100644
|
||||
--- a/source/Core/Threads/UI/drawing/mono_96x16/draw_homescreen_simplified.cpp
|
||||
+++ b/source/Core/Threads/UI/drawing/mono_96x16/draw_homescreen_simplified.cpp
|
||||
@@ -1,7 +1,6 @@
|
||||
#include "ui_drawing.hpp"
|
||||
|
||||
#ifdef OLED_96x16
|
||||
-
|
||||
extern uint8_t buttonAF[sizeof(buttonA)];
|
||||
extern uint8_t buttonBF[sizeof(buttonB)];
|
||||
extern uint8_t disconnectedTipF[sizeof(disconnectedTip)];
|
||||
@@ -9,21 +8,42 @@ extern uint8_t disconnectedTipF[sizeof(disconnectedTip)];
|
||||
void ui_draw_homescreen_simplified(TemperatureType_t tipTemp) {
|
||||
bool isFlipped = OLED::getRotation();
|
||||
bool tipDisconnected = isTipDisconnected();
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ bool swapButtonMenu = getSettingValue(SettingsOptions::ReverseButtonMenu);
|
||||
+#endif
|
||||
|
||||
// Flip and switch buttons accordingly
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ OLED::drawArea(isFlipped ? 54 : 0, 0, 42, 16, isFlipped ? (swapButtonMenu ? buttonBF : buttonAF) : (swapButtonMenu ? buttonB : buttonA));
|
||||
+ OLED::drawArea(isFlipped ? 12 : 42, 0, 42, 16, isFlipped ? (swapButtonMenu ? buttonAF : buttonBF) : (swapButtonMenu ? buttonA : buttonB));
|
||||
+#else
|
||||
OLED::drawArea(isFlipped ? 54 : 0, 0, 42, 16, isFlipped ? buttonAF : buttonA);
|
||||
OLED::drawArea(isFlipped ? 12 : 42, 0, 42, 16, isFlipped ? buttonBF : buttonB);
|
||||
+#endif
|
||||
|
||||
if ((tipTemp > 55) || tipDisconnected) {
|
||||
// draw temp over the start soldering button
|
||||
// Location changes on screen rotation and due to button swapping
|
||||
// in right handed mode we want to draw over the first part
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ OLED::fillArea(swapButtonMenu ? (isFlipped ? 14 : 42) : (isFlipped ? 55 : 0), 0, 41, 16, 0); // clear the area
|
||||
+ OLED::setCursor(swapButtonMenu ? (isFlipped ? 15 : 43) : (isFlipped ? 56 : 0), 0);
|
||||
+#else
|
||||
OLED::fillArea(isFlipped ? 55 : 0, 0, 41, 16, 0); // clear the area
|
||||
OLED::setCursor(isFlipped ? 56 : 0, 0);
|
||||
+#endif
|
||||
// If tip is disconnected draw the notification, otherwise - the temp
|
||||
if (tipDisconnected) {
|
||||
// Draw-in the missing tip symbol
|
||||
- OLED::drawArea(isFlipped ? 54 : 0, 0, 42, 16, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ if (swapButtonMenu) {
|
||||
+ OLED::drawArea(isFlipped ? 12 : 42, 0, 42, 16, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
+ } else {
|
||||
+#endif
|
||||
+ OLED::drawArea(isFlipped ? 54 : 0, 0, 42, 16, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ }
|
||||
+#endif
|
||||
} else if (!(getSettingValue(SettingsOptions::CoolingTempBlink) && (xTaskGetTickCount() % 1000 < 300))) {
|
||||
ui_draw_tip_temperature(false, FontStyle::LARGE); // Draw-in the temp
|
||||
}
|
||||
@@ -31,5 +51,4 @@ void ui_draw_homescreen_simplified(TemperatureType_t tipTemp) {
|
||||
OLED::setCursor(isFlipped ? 0 : 84, 0);
|
||||
ui_draw_power_source_icon();
|
||||
}
|
||||
-
|
||||
#endif
|
||||
diff --git a/source/Core/Threads/UI/logic/utils/shouldDeviceShutdown.cpp b/source/Core/Threads/UI/logic/utils/shouldDeviceShutdown.cpp
|
||||
index 541a2669..271285cf 100644
|
||||
--- a/source/Core/Threads/UI/logic/utils/shouldDeviceShutdown.cpp
|
||||
+++ b/source/Core/Threads/UI/logic/utils/shouldDeviceShutdown.cpp
|
||||
@@ -17,7 +17,11 @@ bool shouldShutdown(void) {
|
||||
}
|
||||
}
|
||||
}
|
||||
+#ifdef OPT_FULL_BUTTON_REVERSE
|
||||
+ if (getButtonState(getSettingValue(SettingsOptions::ReverseButtonMenu) == BUTTON_B_LONG) { // allow also if back button is pressed long
|
||||
+#else
|
||||
if (getButtonState() == BUTTON_B_LONG) { // allow also if back button is pressed long
|
||||
+#endif
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
diff --git a/source/Makefile b/source/Makefile
|
||||
index 6de3b6d4..4ab23087 100644
|
||||
--- a/source/Makefile
|
||||
+++ b/source/Makefile
|
||||
@@ -355,7 +355,7 @@ OPTIM=-Os \
|
||||
-fsingle-precision-constant
|
||||
|
||||
# Global defines ---------------------------------------------------------------
|
||||
-GLOBAL_DEFINES+=$(DEV_GLOBAL_DEFS) -D USE_RTOS_SYSTICK -D MODEL_$(model) -D VECT_TAB_OFFSET=$(bootldr_size)U -fshort-wchar
|
||||
+GLOBAL_DEFINES+=$(DEV_GLOBAL_DEFS) -D USE_RTOS_SYSTICK -D MODEL_$(model) -D VECT_TAB_OFFSET=$(bootldr_size)U -fshort-wchar -DOPT_FULL_BUTTON_REVERSE
|
||||
|
||||
ifdef swd_enable
|
||||
GLOBAL_DEFINES+=-DSWD_ENABLE
|
@@ -53,15 +53,18 @@
|
||||
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#define ORIENTATION_MODE 0 // 0: Right 1:Left 2:Automatic - Default right
|
||||
#define MAX_ORIENTATION_MODE 1 // Unlikely to ever change
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||
|
||||
/**
|
||||
* Buttons handling
|
||||
*/
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assignment for temperature change
|
||||
#define REVERSE_BUTTON_MENU 0 // 0:Default 1:Reverse - Reverse the A and B button assignment for Settings menu only
|
||||
|
||||
/**
|
||||
* OLED Brightness
|
||||
*
|
||||
*/
|
||||
#define MIN_BRIGHTNESS 0 // Min OLED brightness selectable
|
||||
#define MAX_BRIGHTNESS 100 // Max OLED brightness selectable
|
||||
|
@@ -53,15 +53,18 @@
|
||||
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#define ORIENTATION_MODE 2 // 0: Right 1:Left 2:Automatic - Default Automatic
|
||||
#define MAX_ORIENTATION_MODE 2 // Up to auto
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||
|
||||
/**
|
||||
* Buttons handling
|
||||
*/
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assignment for temperature change
|
||||
#define REVERSE_BUTTON_MENU 0 // 0:Default 1:Reverse - Reverse the A and B button assignment for Settings menu only
|
||||
|
||||
/**
|
||||
* OLED Brightness
|
||||
*
|
||||
*/
|
||||
#if defined(MODEL_TS101)
|
||||
#define MIN_BRIGHTNESS 1 // Min OLED brightness selectable
|
||||
|
@@ -53,15 +53,18 @@
|
||||
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#define ORIENTATION_MODE 2 // 0: Right 1:Left 2:Automatic - Default Automatic
|
||||
#define MAX_ORIENTATION_MODE 2 // Up to auto
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||
|
||||
/**
|
||||
* Buttons handling
|
||||
*/
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assignment for temperature change
|
||||
#define REVERSE_BUTTON_MENU 0 // 0:Default 1:Reverse - Reverse the A and B button assignment for Settings menu only
|
||||
|
||||
/**
|
||||
* OLED Brightness
|
||||
*
|
||||
*/
|
||||
#define MIN_BRIGHTNESS 0 // Min OLED brightness selectable
|
||||
#define MAX_BRIGHTNESS 100 // Max OLED brightness selectable
|
||||
|
@@ -53,15 +53,18 @@
|
||||
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#define ORIENTATION_MODE 2 // 0: Right 1:Left 2:Automatic - Default Automatic
|
||||
#define MAX_ORIENTATION_MODE 2 // Up to auto
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||
|
||||
/**
|
||||
* Buttons handling
|
||||
*/
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assignment for temperature change
|
||||
#define REVERSE_BUTTON_MENU 0 // 0:Default 1:Reverse - Reverse the A and B button assignment for Settings menu only
|
||||
|
||||
/**
|
||||
* OLED Brightness
|
||||
*
|
||||
*/
|
||||
#define MIN_BRIGHTNESS 1 // Min OLED brightness selectable
|
||||
#define MAX_BRIGHTNESS 101 // Max OLED brightness selectable
|
||||
|
@@ -4,7 +4,6 @@
|
||||
/**
|
||||
* Configuration.h
|
||||
* Define here your default pre settings for S60
|
||||
*
|
||||
*/
|
||||
|
||||
//===========================================================================
|
||||
@@ -21,7 +20,6 @@
|
||||
|
||||
/**
|
||||
* OLED Brightness
|
||||
*
|
||||
*/
|
||||
#define MIN_BRIGHTNESS 1 // Min OLED brightness selectable
|
||||
#define MAX_BRIGHTNESS 101 // Max OLED brightness selectable
|
||||
@@ -62,11 +60,15 @@
|
||||
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#define ORIENTATION_MODE 0 // 0: Right 1:Left (2:Automatic N/A)
|
||||
#define MAX_ORIENTATION_MODE 1 // Disable auto mode
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||
|
||||
/**
|
||||
* Buttons handling
|
||||
*/
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assignment for temperature change
|
||||
#define REVERSE_BUTTON_MENU 0 // 0:Default 1:Reverse - Reverse the A and B button assignment for Settings menu only
|
||||
|
||||
/**
|
||||
* Temp change settings
|
||||
|
@@ -11,7 +11,7 @@
|
||||
#include <Buttons.hpp>
|
||||
TickType_t lastButtonTime = 0;
|
||||
|
||||
ButtonState getButtonState() {
|
||||
ButtonState getButtonState(bool swapButtonMenu) {
|
||||
/*
|
||||
* Read in the buttons and then determine if a state change needs to occur
|
||||
*/
|
||||
@@ -28,8 +28,8 @@ ButtonState getButtonState() {
|
||||
static TickType_t previousStateChange = 0;
|
||||
const TickType_t timeout = TICKS_100MS * 4;
|
||||
uint8_t currentState;
|
||||
currentState = (getButtonA()) << 0;
|
||||
currentState |= (getButtonB()) << 1;
|
||||
currentState = (getButtonA()) << (0 xor swapButtonMenu);
|
||||
currentState |= (getButtonB()) << (1 xor swapButtonMenu);
|
||||
|
||||
if (currentState) {
|
||||
lastButtonTime = xTaskGetTickCount();
|
||||
|
@@ -27,7 +27,8 @@ enum ButtonState {
|
||||
};
|
||||
|
||||
// Returns what buttons are pressed (if any)
|
||||
ButtonState getButtonState();
|
||||
ButtonState getButtonState(bool swapButtonMenu = 0);
|
||||
|
||||
// Helpers
|
||||
void waitForButtonPressOrTimeout(TickType_t timeout);
|
||||
void waitForButtonPress();
|
||||
|
@@ -76,8 +76,9 @@ enum SettingsOptions {
|
||||
ProfileCooldownSpeed = 52, // Maximum allowed cooldown speed in degrees per second
|
||||
HallEffectSleepTime = 53, // Seconds (/5) timeout to sleep when hall effect over threshold
|
||||
SolderingTipType = 54, // Selecting the type of soldering tip fitted
|
||||
ReverseButtonMenu = 55, // Change the A and B button assigment in menus
|
||||
//
|
||||
SettingsOptionsLength = 55, // End marker
|
||||
SettingsOptionsLength = 56, // End marker
|
||||
};
|
||||
|
||||
typedef enum {
|
||||
|
@@ -54,6 +54,11 @@ extern const char *DebugMenu[];
|
||||
extern const char *AccelTypeNames[];
|
||||
extern const char *PowerSourceNames[];
|
||||
|
||||
/* !
|
||||
* The order of the items inside this enum class SettingsItemIndex
|
||||
* must be the same as the order of the related items
|
||||
* in the "menuOptions" section of translations_definitions.json file.
|
||||
*/
|
||||
enum class SettingsItemIndex : uint8_t {
|
||||
DCInCutoff,
|
||||
MinVolCell,
|
||||
@@ -90,6 +95,7 @@ enum class SettingsItemIndex : uint8_t {
|
||||
CooldownBlink,
|
||||
ScrollingSpeed,
|
||||
ReverseButtonTempChange,
|
||||
ReverseButtonMenu,
|
||||
AnimSpeed,
|
||||
AnimLoop,
|
||||
Brightness,
|
||||
|
@@ -54,7 +54,7 @@ typedef struct {
|
||||
} SettingConstants;
|
||||
|
||||
static const SettingConstants settingsConstants[(int)SettingsOptions::SettingsOptionsLength] = {
|
||||
//{ min, max, increment, default}
|
||||
// MIN, MAX, INCREMENT, DEFAULT
|
||||
{ MIN_TEMP_C, MAX_TEMP_F, 5, SOLDERING_TEMP}, // SolderingTemp
|
||||
{ MIN_TEMP_C, MAX_TEMP_F, 5, 150}, // SleepTemp
|
||||
{ 0, 15, 1, SLEEP_TIME}, // SleepTime
|
||||
@@ -110,6 +110,8 @@ static const SettingConstants settingsConstants[(int)SettingsOptions::SettingsOp
|
||||
{ 1, 10, 1, 2}, // ProfileCooldownSpeed
|
||||
{ 0, 12, 1, 0}, // HallEffectSleepTime
|
||||
{ 0, (tipType_t::TIP_TYPE_MAX - 1) > 0 ? (tipType_t::TIP_TYPE_MAX - 1) : 0, 1, 0}, // SolderingTipType
|
||||
{ 0, 1, 1, REVERSE_BUTTON_MENU}, // ReverseButtonMenu
|
||||
// MIN, MAX, INCREMENT, DEFAULT
|
||||
};
|
||||
static_assert((sizeof(settingsConstants) / sizeof(SettingConstants)) == ((int)SettingsOptions::SettingsOptionsLength));
|
||||
|
||||
|
@@ -47,6 +47,7 @@ static void displayAdvancedSolderingScreens(void);
|
||||
static void displayAdvancedIDLEScreens(void);
|
||||
static void displayScrollSpeed(void);
|
||||
static void displayReverseButtonTempChangeEnabled(void);
|
||||
static void displayReverseButtonMenu(void);
|
||||
static void displayPowerLimit(void);
|
||||
|
||||
#ifdef BLE_ENABLED
|
||||
@@ -395,6 +396,8 @@ const menuitem UIMenu[] = {
|
||||
{SETTINGS_DESC(SettingsItemIndex::ScrollingSpeed), nullptr, displayScrollSpeed, nullptr, SettingsOptions::DescriptionScrollSpeed, SettingsItemIndex::ScrollingSpeed, 7},
|
||||
/* Reverse Temp change buttons +/- */
|
||||
{SETTINGS_DESC(SettingsItemIndex::ReverseButtonTempChange), nullptr, displayReverseButtonTempChangeEnabled, nullptr, SettingsOptions::ReverseButtonTempChangeEnabled, SettingsItemIndex::ReverseButtonTempChange, 7},
|
||||
/* Reverse menu nav buttons A/B */
|
||||
{SETTINGS_DESC(SettingsItemIndex::ReverseButtonMenu), nullptr, displayReverseButtonMenu, nullptr, SettingsOptions::ReverseButtonMenu, SettingsItemIndex::ReverseButtonMenu, 7},
|
||||
/* Animation Speed adjustment */
|
||||
{SETTINGS_DESC(SettingsItemIndex::AnimSpeed), nullptr, displayAnimationSpeed, nullptr, SettingsOptions::AnimationSpeed, SettingsItemIndex::AnimSpeed, 7},
|
||||
/* Animation Loop switch */
|
||||
@@ -480,7 +483,7 @@ static int userConfirmation(const char *message) {
|
||||
for (;;) {
|
||||
drawScrollingText(message, xTaskGetTickCount() - tickStart);
|
||||
|
||||
ButtonState buttons = getButtonState();
|
||||
ButtonState buttons = getButtonState(getSettingValue(SettingsOptions::ReverseButtonTempChangeEnabled));
|
||||
switch (buttons) {
|
||||
case BUTTON_F_SHORT:
|
||||
// User confirmed
|
||||
@@ -853,6 +856,8 @@ static void displayScrollSpeed(void) { OLED::print(translatedString((getSettingV
|
||||
|
||||
static void displayReverseButtonTempChangeEnabled(void) { OLED::drawCheckbox(getSettingValue(SettingsOptions::ReverseButtonTempChangeEnabled)); }
|
||||
|
||||
static void displayReverseButtonMenu(void) { OLED::drawCheckbox(getSettingValue(SettingsOptions::ReverseButtonMenu)); }
|
||||
|
||||
static void displayAnimationSpeed(void) {
|
||||
switch (getSettingValue(SettingsOptions::AnimationSpeed)) {
|
||||
case settingOffSpeed_t::SLOW:
|
||||
@@ -948,7 +953,7 @@ static void setCalibrateVIN(void) {
|
||||
OLED::setCursor(0, 8);
|
||||
OLED::printNumber(getSettingValue(SettingsOptions::VoltageDiv), 3, FontStyle::SMALL);
|
||||
|
||||
switch (getButtonState()) {
|
||||
switch (getButtonState(getSettingValue(SettingsOptions::ReverseButtonMenu))) {
|
||||
case BUTTON_F_SHORT:
|
||||
prevSettingValue(SettingsOptions::VoltageDiv);
|
||||
break;
|
||||
|
@@ -41,8 +41,11 @@ OperatingMode currentOperatingMode = OperatingMode::InitialisationDone; // Curre
|
||||
guiContext context; // Context passed to functions to aid in state during render passes
|
||||
|
||||
OperatingMode handle_post_init_state();
|
||||
|
||||
OperatingMode guiHandleDraw(void) {
|
||||
OLED::clearScreen(); // Clear ready for render pass
|
||||
bool swapButtonMenu = getSettingValue(SettingsOptions::ReverseButtonMenu);
|
||||
bool swapButtonTemp = getSettingValue(SettingsOptions::ReverseButtonTempChangeEnabled);
|
||||
// Read button state
|
||||
ButtonState buttons = getButtonState();
|
||||
// Enforce screen on if buttons pressed, movement, hot tip etc
|
||||
@@ -110,7 +113,7 @@ OperatingMode guiHandleDraw(void) {
|
||||
newMode = gui_SolderingSleepingMode(buttons, &context);
|
||||
break;
|
||||
case OperatingMode::TemperatureAdjust:
|
||||
newMode = gui_solderingTempAdjust(buttons, &context);
|
||||
newMode = gui_solderingTempAdjust(getButtonState(swapButtonTemp), &context);
|
||||
break;
|
||||
case OperatingMode::DebugMenuReadout:
|
||||
newMode = showDebugMenu(buttons, &context);
|
||||
@@ -119,7 +122,7 @@ OperatingMode guiHandleDraw(void) {
|
||||
newMode = performCJCC(buttons, &context);
|
||||
break;
|
||||
case OperatingMode::SettingsMenu:
|
||||
newMode = gui_SettingsMenu(buttons, &context);
|
||||
newMode = gui_SettingsMenu(getButtonState(swapButtonMenu), &context);
|
||||
break;
|
||||
case OperatingMode::InitialisationDone:
|
||||
newMode = handle_post_init_state();
|
||||
@@ -138,6 +141,7 @@ OperatingMode guiHandleDraw(void) {
|
||||
};
|
||||
return newMode;
|
||||
}
|
||||
|
||||
void guiRenderLoop(void) {
|
||||
OperatingMode newMode = guiHandleDraw(); // This does the screen drawing
|
||||
|
||||
|
@@ -7,56 +7,29 @@ extern uint8_t buttonBF[sizeof(buttonB)];
|
||||
extern uint8_t disconnectedTipF[sizeof(disconnectedTip)];
|
||||
|
||||
void ui_draw_homescreen_simplified(TemperatureType_t tipTemp) {
|
||||
bool tempOnDisplay = false;
|
||||
bool tipDisconnectedDisplay = false;
|
||||
if (OLED::getRotation()) {
|
||||
OLED::drawArea(68, 0, 56, 32, buttonAF);
|
||||
OLED::drawArea(12, 0, 56, 32, buttonBF);
|
||||
OLED::setCursor(0, 0);
|
||||
ui_draw_power_source_icon();
|
||||
} else {
|
||||
OLED::drawArea(0, 0, 56, 32, buttonA); // Needs to be flipped so button ends up
|
||||
OLED::drawArea(58, 0, 56, 32, buttonB); // on right side of screen
|
||||
OLED::setCursor(116, 0);
|
||||
ui_draw_power_source_icon();
|
||||
}
|
||||
tipDisconnectedDisplay = false;
|
||||
if (tipTemp > 55) {
|
||||
tempOnDisplay = true;
|
||||
} else if (tipTemp < 45) {
|
||||
tempOnDisplay = false;
|
||||
}
|
||||
if (isTipDisconnected()) {
|
||||
tempOnDisplay = false;
|
||||
tipDisconnectedDisplay = true;
|
||||
}
|
||||
if (tempOnDisplay || tipDisconnectedDisplay) {
|
||||
bool isFlipped = OLED::getRotation();
|
||||
bool tipDisconnected = isTipDisconnected();
|
||||
|
||||
// Flip and switch buttons accordingly
|
||||
OLED::drawArea(isFlipped ? 68 : 0, 0, 56, 32, isFlipped ? buttonAF : buttonA);
|
||||
OLED::drawArea(isFlipped ? 12 : 58, 0, 56, 32, isFlipped ? buttonBF : buttonB);
|
||||
|
||||
if ((tipTemp > 55) || tipDisconnected) {
|
||||
// draw temp over the start soldering button
|
||||
// Location changes on screen rotation
|
||||
if (OLED::getRotation()) {
|
||||
// in right handed mode we want to draw over the first part
|
||||
OLED::fillArea(68, 0, 56, 32, 0); // clear the area for the temp
|
||||
OLED::setCursor(56, 0);
|
||||
} else {
|
||||
OLED::fillArea(0, 0, 56, 32, 0); // clear the area
|
||||
OLED::setCursor(0, 0);
|
||||
}
|
||||
// If we have a tip connected draw the temp, if not we leave it blank
|
||||
if (!tipDisconnectedDisplay) {
|
||||
// draw in the temp
|
||||
if (!(getSettingValue(SettingsOptions::CoolingTempBlink) && (xTaskGetTickCount() % 1000 < 300))) {
|
||||
ui_draw_tip_temperature(false, FontStyle::LARGE); // draw in the temp
|
||||
}
|
||||
} else {
|
||||
// Draw in missing tip symbol
|
||||
if (OLED::getRotation()) {
|
||||
// in right handed mode we want to draw over the first part
|
||||
OLED::drawArea(54, 0, 56, 32, disconnectedTipF);
|
||||
} else {
|
||||
OLED::drawArea(0, 0, 56, 32, disconnectedTip);
|
||||
}
|
||||
// Location changes on screen rotation and due to button swapping
|
||||
// in right handed mode we want to draw over the first part
|
||||
OLED::fillArea(isFlipped ? 68 : 0, 0, 56, 32, 0); // clear the area
|
||||
OLED::setCursor(isFlipped ? 56 : 0, 0);
|
||||
// If tip is disconnected draw the notification, otherwise - the temp
|
||||
if (tipDisconnected) {
|
||||
// Draw-in the missing tip symbol
|
||||
OLED::drawArea(isFlipped ? 54 : 0, 0, 56, 32, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
} else if (!(getSettingValue(SettingsOptions::CoolingTempBlink) && (xTaskGetTickCount() % 1000 < 300))) {
|
||||
ui_draw_tip_temperature(false, FontStyle::LARGE); // Draw-in the temp
|
||||
}
|
||||
}
|
||||
OLED::setCursor(isFlipped ? 0 : 116, 0);
|
||||
ui_draw_power_source_icon();
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
@@ -1,62 +1,35 @@
|
||||
#include "ui_drawing.hpp"
|
||||
|
||||
#ifdef OLED_96x16
|
||||
|
||||
extern uint8_t buttonAF[sizeof(buttonA)];
|
||||
extern uint8_t buttonBF[sizeof(buttonB)];
|
||||
extern uint8_t disconnectedTipF[sizeof(disconnectedTip)];
|
||||
|
||||
void ui_draw_homescreen_simplified(TemperatureType_t tipTemp) {
|
||||
bool tempOnDisplay = false;
|
||||
bool tipDisconnectedDisplay = false;
|
||||
if (OLED::getRotation()) {
|
||||
OLED::drawArea(54, 0, 42, 16, buttonAF);
|
||||
OLED::drawArea(12, 0, 42, 16, buttonBF);
|
||||
OLED::setCursor(0, 0);
|
||||
ui_draw_power_source_icon();
|
||||
} else {
|
||||
OLED::drawArea(0, 0, 42, 16, buttonA); // Needs to be flipped so button ends up
|
||||
OLED::drawArea(42, 0, 42, 16, buttonB); // on right side of screen
|
||||
OLED::setCursor(84, 0);
|
||||
ui_draw_power_source_icon();
|
||||
}
|
||||
tipDisconnectedDisplay = false;
|
||||
if (tipTemp > 55) {
|
||||
tempOnDisplay = true;
|
||||
} else if (tipTemp < 45) {
|
||||
tempOnDisplay = false;
|
||||
}
|
||||
if (isTipDisconnected()) {
|
||||
tempOnDisplay = false;
|
||||
tipDisconnectedDisplay = true;
|
||||
}
|
||||
if (tempOnDisplay || tipDisconnectedDisplay) {
|
||||
// draw temp over the start soldering button
|
||||
// Location changes on screen rotation
|
||||
if (OLED::getRotation()) {
|
||||
// in right handed mode we want to draw over the first part
|
||||
OLED::fillArea(55, 0, 41, 16, 0); // clear the area for the temp
|
||||
OLED::setCursor(56, 0);
|
||||
} else {
|
||||
OLED::fillArea(0, 0, 41, 16, 0); // clear the area
|
||||
OLED::setCursor(0, 0);
|
||||
}
|
||||
// If we have a tip connected draw the temp, if not we leave it blank
|
||||
if (!tipDisconnectedDisplay) {
|
||||
// draw in the temp
|
||||
if (!(getSettingValue(SettingsOptions::CoolingTempBlink) && (xTaskGetTickCount() % 1000 < 300))) {
|
||||
ui_draw_tip_temperature(false, FontStyle::LARGE); // draw in the temp
|
||||
}
|
||||
} else {
|
||||
// Draw in missing tip symbol
|
||||
bool isFlipped = OLED::getRotation();
|
||||
bool tipDisconnected = isTipDisconnected();
|
||||
|
||||
if (OLED::getRotation()) {
|
||||
// in right handed mode we want to draw over the first part
|
||||
OLED::drawArea(54, 0, 42, 16, disconnectedTipF);
|
||||
} else {
|
||||
OLED::drawArea(0, 0, 42, 16, disconnectedTip);
|
||||
}
|
||||
// Flip and switch buttons accordingly
|
||||
OLED::drawArea(isFlipped ? 54 : 0, 0, 42, 16, isFlipped ? buttonAF : buttonA);
|
||||
OLED::drawArea(isFlipped ? 12 : 42, 0, 42, 16, isFlipped ? buttonBF : buttonB);
|
||||
|
||||
if ((tipTemp > 55) || tipDisconnected) {
|
||||
// draw temp over the start soldering button
|
||||
// Location changes on screen rotation and due to button swapping
|
||||
// in right handed mode we want to draw over the first part
|
||||
OLED::fillArea(isFlipped ? 55 : 0, 0, 41, 16, 0); // clear the area
|
||||
OLED::setCursor(isFlipped ? 56 : 0, 0);
|
||||
// If tip is disconnected draw the notification, otherwise - the temp
|
||||
if (tipDisconnected) {
|
||||
// Draw-in the missing tip symbol
|
||||
OLED::drawArea(isFlipped ? 54 : 0, 0, 42, 16, isFlipped ? disconnectedTipF : disconnectedTip);
|
||||
} else if (!(getSettingValue(SettingsOptions::CoolingTempBlink) && (xTaskGetTickCount() % 1000 < 300))) {
|
||||
ui_draw_tip_temperature(false, FontStyle::LARGE); // Draw-in the temp
|
||||
}
|
||||
}
|
||||
OLED::setCursor(isFlipped ? 0 : 84, 0);
|
||||
ui_draw_power_source_icon();
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
@@ -54,10 +54,6 @@ OperatingMode gui_solderingTempAdjust(const ButtonState buttonIn, guiContext *cx
|
||||
if ((PRESS_ACCEL_INTERVAL_MAX - (*autoRepeatAcceleration)) < PRESS_ACCEL_INTERVAL_MIN) {
|
||||
(*autoRepeatAcceleration) = PRESS_ACCEL_INTERVAL_MAX - PRESS_ACCEL_INTERVAL_MIN;
|
||||
}
|
||||
// If buttons are flipped; flip the delta
|
||||
if (getSettingValue(SettingsOptions::ReverseButtonTempChangeEnabled)) {
|
||||
delta = -delta;
|
||||
}
|
||||
if (delta != 0) {
|
||||
// constrain between the set temp limits, i.e. 10-450 C
|
||||
int16_t newTemp = getSettingValue(SettingsOptions::SolderingTemp);
|
||||
|
Reference in New Issue
Block a user