BonPrinter v1.2.0
Thermal Printer tool
Loading...
Searching...
No Matches
Language Class Reference

Class to set language. More...

Public Member Functions

None __init__ (self, "MainWindow" ui)
Any get_language_text (self, list[Any] l_text)
 Get language text.
list[str] get_table_row_description (self)
 Get table row description.
None update_language (self, ELanguages e_language)
 Update dark mode status.
None update_widgets (self, bool b_update_screen=True)
 Update widgets to actual language.

Public Attributes

 e_language = read_language()
 ui = ui

Detailed Description

Class to set language.

Parameters
ui: main window object

Definition at line 87 of file language.py.

Constructor & Destructor Documentation

◆ __init__()

None __init__ ( self,
"MainWindow" ui )

Definition at line 93 of file language.py.

93 def __init__(self, ui: "MainWindow") -> None:
94 self.ui = ui
95 self.e_language = read_language()
96 log.debug("Select Language: %s", self.e_language)
97 self.update_widgets(b_update_screen=False)
98

Member Function Documentation

◆ get_language_text()

Any get_language_text ( self,
list[Any] l_text )

Get language text.

Parameters
l_text: list with possible language text
Returns
text of active language

Definition at line 117 of file language.py.

117 def get_language_text(self, l_text: list[Any]) -> Any:
118 """!
119 @brief Get language text
120 @param l_text : list with possible language text
121 @return text of active language
122 """
123 index = list(ELanguages).index(self.e_language)
124 if len(l_text) > index:
125 text = l_text[index]
126 if not text:
127 text = l_text[0] # get default language if translate
128 else:
129 text = l_text[0]
130 log.debug("Not all Languages supported: %s", l_text)
131 return text
132

◆ get_table_row_description()

list[str] get_table_row_description ( self)

Get table row description.

Returns
list with table description

Definition at line 192 of file language.py.

192 def get_table_row_description(self) -> list[str]:
193 """!
194 @brief Get table row description
195 @return list with table description
196 """
197 l_table_row_description = ["n", self.get_language_text(L_MENU_ARTICLE), self.get_language_text(L_PRICE)]
198 return l_table_row_description

◆ update_language()

None update_language ( self,
ELanguages e_language )

Update dark mode status.

Parameters
e_language: select language mode

Definition at line 99 of file language.py.

99 def update_language(self, e_language: ELanguages) -> None:
100 """!
101 @brief Update dark mode status.
102 @param e_language : select language mode
103 """
104 self.e_language = e_language
105 write_language(self.e_language)
106 self.update_widgets()
107 match self.e_language:
108 case ELanguages.ENGLISH:
109 language = self.get_language_text(L_MENU_LANGUAGE_ENGLISH)
110 case ELanguages.GERMAN:
111 language = self.get_language_text(L_MENU_LANGUAGE_GERMAN)
112 case _:
113 language = "Unknown"
114 self.ui.set_status([f"Language set to {language}",
115 f"Sprache geƤndert zu {language}"])
116

◆ update_widgets()

None update_widgets ( self,
bool b_update_screen = True )

Update widgets to actual language.

Parameters
b_update_screen: status if screen should updated

Definition at line 133 of file language.py.

133 def update_widgets(self, b_update_screen: bool = True) -> None:
134 """!
135 @brief Update widgets to actual language
136 @param b_update_screen : status if screen should updated
137 """
138 config_menu(self.ui.menu_prints, text=self.get_language_text(L_MENU_PRINTS))
139 config_menu(self.ui.action_show_interim, text=self.get_language_text(L_MENU_SHOW_STATUS))
140 config_menu(self.ui.action_open_folder, text=self.get_language_text(L_MENU_OPEN_FOLDER))
141 config_menu(self.ui.menu_combine_report, text=self.get_language_text(L_MENU_COMBINE_REPORT))
142 config_menu(self.ui.action_combine_manual, text=self.get_language_text(L_MENU_MANUAL_COMBINE))
143 config_menu(self.ui.action_combine_auto, text=self.get_language_text(L_MENU_AUTO_COMBINE))
144 config_menu(self.ui.action_print_file, text=self.get_language_text(L_MENU_PRINT_FILE))
145 config_menu(self.ui.action_article_preview, text=self.get_language_text(L_MENU_ARTICLE_PREVIEW))
146 config_menu(self.ui.action_enable_report, text=self.get_language_text(L_MENU_ENABLE_PRINT_REPORT))
147 config_menu(self.ui.action_create_billing, text=self.get_language_text(L_MENU_CREATE_REPORT))
148
149 config_menu(self.ui.menu_configuration, text=self.get_language_text(L_MENU_CONFIG))
150 config_menu(self.ui.menu_user, text=self.get_language_text(L_MENU_USER))
151 config_menu(self.ui.action_user_edit, text=self.get_language_text(L_MENU_EDIT))
152 config_menu(self.ui.action_user_import, text=self.get_language_text(L_MENU_IMPORT))
153 config_menu(self.ui.action_user_export, text=self.get_language_text(L_MENU_EXPORT))
154 config_menu(self.ui.action_user_new, text=self.get_language_text(L_MENU_SET_DEFAULT))
155 config_menu(self.ui.menu_articles, text=self.get_language_text(L_MENU_ARTICLE))
156 config_menu(self.ui.action_articles_edit, text=self.get_language_text(L_MENU_EDIT))
157 config_menu(self.ui.action_articles_import, text=self.get_language_text(L_MENU_IMPORT))
158 config_menu(self.ui.action_articles_export, text=self.get_language_text(L_MENU_EXPORT))
159 config_menu(self.ui.action_articles_new, text=self.get_language_text(L_MENU_SET_DEFAULT))
160 config_menu(self.ui.action_change_path, text=self.get_language_text(L_MENU_CHANGE_PATH))
161 config_menu(self.ui.menu_com_port, text=self.get_language_text(L_MENU_PRINTER_PORT))
162 config_menu(self.ui.menu_paper_width, text=self.get_language_text(L_MENU_PAPER_WIDTH))
163
164 config_menu(self.ui.menu_settings, text=self.get_language_text(L_MENU_SETTINGS))
165 config_menu(self.ui.action_sound, text=self.get_language_text(L_MENU_SOUND))
166 config_menu(self.ui.menu_style, text=self.get_language_text(L_MENU_THEME))
167 config_menu(self.ui.action_auto, text=self.get_language_text(L_MENU_AUTO))
168 config_menu(self.ui.action_light, text=self.get_language_text(L_MENU_LIGHT))
169 config_menu(self.ui.action_dark, text=self.get_language_text(L_MENU_DARK))
170 config_menu(self.ui.action_normal, text=self.get_language_text(L_MENU_CLASSIC))
171 config_menu(self.ui.action_system, text=self.get_language_text(L_MENU_SYSTEM))
172 config_menu(self.ui.menu_language, text=self.get_language_text(L_MENU_LANGUAGE))
173 config_menu(self.ui.action_english, text=self.get_language_text(L_MENU_LANGUAGE_ENGLISH))
174 config_menu(self.ui.action_german, text=self.get_language_text(L_MENU_LANGUAGE_GERMAN))
175 config_menu(self.ui.action_show_price, text=self.get_language_text(L_MENU_SHOW_PRICE))
176 config_menu(self.ui.menu_log_verbosity, text=self.get_language_text(L_MENU_LOG_VERBOSITY))
177 config_menu(self.ui.action_log_error, text=f"(0) {self.get_language_text(L_MENU_LOG_ERROR)}")
178 config_menu(self.ui.action_log_warning, text=f"(1) {self.get_language_text(L_MENU_LOG_WARNING)}")
179 config_menu(self.ui.action_log_info, text=f"(2) {self.get_language_text(L_MENU_LOG_INFO)}")
180 config_menu(self.ui.action_log_debug, text=f"(3) {self.get_language_text(L_MENU_LOG_DEBUG)}")
181
182 config_menu(self.ui.menu_help, text=self.get_language_text(L_MENU_HELP))
183 config_menu(self.ui.action_help, text=self.get_language_text(L_MENU_SHOW_HELP))
184 config_menu(self.ui.action_about_app, text=f"{self.get_language_text(L_MENU_ABOUT)} {__title__}")
185 config_menu(self.ui.action_reset, text=self.get_language_text(L_MENU_RESET))
186
187 config_btn(self.ui.btn_calc, text=self.get_language_text(L_CALC))
188
189 if b_update_screen:
190 self.ui.update_screen()
191

Member Data Documentation

◆ e_language

e_language = read_language()

Definition at line 95 of file language.py.

◆ ui

ui = ui

Definition at line 94 of file language.py.


The documentation for this class was generated from the following file: