bash-script-maker 1.7.0__tar.gz → 1.8.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. {bash-script-maker-1.7.0/bash_script_maker.egg-info → bash-script-maker-1.8.0}/PKG-INFO +1 -1
  2. bash-script-maker-1.8.0/VERSION +1 -0
  3. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/__version__.py +2 -2
  4. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0/bash_script_maker.egg-info}/PKG-INFO +1 -1
  5. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.py +160 -28
  6. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/pyproject.toml +1 -1
  7. bash-script-maker-1.7.0/VERSION +0 -1
  8. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/LICENSE +0 -0
  9. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/MANIFEST.in +0 -0
  10. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/README.md +0 -0
  11. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker-128.png +0 -0
  12. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker-16.png +0 -0
  13. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker-256.png +0 -0
  14. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker-32.png +0 -0
  15. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker-48.png +0 -0
  16. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker-64.png +0 -0
  17. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets/bash-script-maker.svg +0 -0
  18. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/assets.py +0 -0
  19. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash-script-maker.desktop +0 -0
  20. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.egg-info/SOURCES.txt +0 -0
  21. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.egg-info/dependency_links.txt +0 -0
  22. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.egg-info/entry_points.txt +0 -0
  23. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.egg-info/not-zip-safe +0 -0
  24. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.egg-info/requires.txt +0 -0
  25. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/bash_script_maker.egg-info/top_level.txt +0 -0
  26. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/beispiel_script.sh +0 -0
  27. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/compile_translations.py +0 -0
  28. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/create_release.sh +0 -0
  29. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/custom_dialogs.py +0 -0
  30. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/dev-requirements.txt +0 -0
  31. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/generate_icons.py +0 -0
  32. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/init_github.sh +0 -0
  33. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/install.sh +0 -0
  34. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/install_apt.sh +0 -0
  35. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/install_desktop_integration.sh +0 -0
  36. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/install_dnf.sh +0 -0
  37. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/locales/de/LC_MESSAGES/base.po +0 -0
  38. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/locales/en/LC_MESSAGES/base.po +0 -0
  39. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/localization.py +0 -0
  40. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/mein_script.sh +0 -0
  41. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/packages.txt +0 -0
  42. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/requirements.txt +0 -0
  43. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/setup.cfg +0 -0
  44. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/setup.py +0 -0
  45. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/setup_flatpak.py +0 -0
  46. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/start.sh +0 -0
  47. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/syntax_highlighter.py +0 -0
  48. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/test_installation.sh +0 -0
  49. {bash-script-maker-1.7.0 → bash-script-maker-1.8.0}/uninstall.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bash-script-maker
3
- Version: 1.7.0
3
+ Version: 1.8.0
4
4
  Summary: Ein GUI-Programm zur Erstellung von Bash-Scripts mit visueller Unterstützung
5
5
  Home-page: https://github.com/securebitsorg/bash-script-maker
6
6
  Author: Marcel Dellmann
@@ -0,0 +1 @@
1
+ 1.8.0
@@ -4,5 +4,5 @@
4
4
  Version information for Bash-Script-Maker
5
5
  """
6
6
 
7
- __version__ = "1.7.0"
8
- __version_info__ = (1, 7, 0)
7
+ __version__ = "1.8.0"
8
+ __version_info__ = (1, 8, 0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bash-script-maker
3
- Version: 1.7.0
3
+ Version: 1.8.0
4
4
  Summary: Ein GUI-Programm zur Erstellung von Bash-Scripts mit visueller Unterstützung
5
5
  Home-page: https://github.com/securebitsorg/bash-script-maker
6
6
  Author: Marcel Dellmann
@@ -125,18 +125,26 @@ class AboutDialog(ttk.Toplevel):
125
125
  def __init__(self, parent):
126
126
  super().__init__(parent)
127
127
  self.title(_("Über Bash-Script-Maker"))
128
- self.geometry("450x350")
128
+ self.geometry("500x450")
129
+ self.resizable(False, False)
129
130
 
130
131
  container = ttk.Frame(self, padding=20)
131
132
  container.pack(fill=tk.BOTH, expand=True)
132
133
 
134
+ # Logo und Titel-Bereich
135
+ header_frame = ttk.Frame(container)
136
+ header_frame.pack(fill=tk.X, pady=(0, 20))
137
+
138
+ # Logo hinzufügen
139
+ self.add_logo_to_header(header_frame)
140
+
133
141
  title_label = ttk.Label(
134
- container,
142
+ header_frame,
135
143
  text="Bash-Script-Maker",
136
- font=("", 18, "bold"),
144
+ font=("Arial", 20, "bold"),
137
145
  bootstyle="primary",
138
146
  )
139
- title_label.pack(pady=(0, 10))
147
+ title_label.pack(pady=(10, 0))
140
148
 
141
149
  desc_text = _("Ein GUI-Programm zur einfachen Erstellung von Bash-Scripts.")
142
150
  desc_label = ttk.Label(container, text=desc_text, wraplength=400)
@@ -182,6 +190,55 @@ class AboutDialog(ttk.Toplevel):
182
190
  )
183
191
  version_label.pack(pady=(15, 0))
184
192
 
193
+ # Schließen-Button
194
+ close_btn = ttk.Button(
195
+ container,
196
+ text=_("Schließen"),
197
+ command=self.destroy,
198
+ bootstyle="primary"
199
+ )
200
+ close_btn.pack(pady=(20, 0))
201
+
202
+ def add_logo_to_header(self, header_frame):
203
+ """Fügt das Logo zum About-Dialog-Header hinzu"""
204
+ try:
205
+ script_dir = os.path.dirname(os.path.abspath(__file__))
206
+ logo_path = os.path.join(script_dir, "assets", "bash-script-maker-64.png")
207
+
208
+ if os.path.exists(logo_path):
209
+ try:
210
+ from PIL import Image, ImageTk
211
+
212
+ # Logo für About-Dialog (64x64)
213
+ img = Image.open(logo_path)
214
+ logo_photo = ImageTk.PhotoImage(img)
215
+
216
+ logo_label = ttk.Label(header_frame, image=logo_photo)
217
+ logo_label.image = logo_photo # Referenz behalten
218
+ logo_label.pack(anchor=tk.CENTER)
219
+
220
+ except ImportError:
221
+ # Fallback: Großes Emoji
222
+ logo_label = ttk.Label(
223
+ header_frame,
224
+ text="🖥️",
225
+ font=("Arial", 48)
226
+ )
227
+ logo_label.pack(anchor=tk.CENTER)
228
+ else:
229
+ # Fallback: Emoji
230
+ logo_label = ttk.Label(
231
+ header_frame,
232
+ text="🖥️",
233
+ font=("Arial", 48)
234
+ )
235
+ logo_label.pack(anchor=tk.CENTER)
236
+
237
+ except Exception as e:
238
+ print(f"Fehler beim Hinzufügen des Logos zum About-Dialog: {e}")
239
+ # Minimaler Fallback
240
+ pass
241
+
185
242
 
186
243
  class ScriptInfoDialog(ttk.Toplevel):
187
244
  def __init__(self, parent, script_name, content):
@@ -330,48 +387,116 @@ class BashScriptMaker:
330
387
  print(f"Fehler beim Setzen des Icons: {e}")
331
388
 
332
389
  def add_logo_to_toolbar(self, toolbar):
333
- """Fügt das Logo zur Toolbar hinzu"""
390
+ """Fügt das Logo und den App-Namen zur Toolbar hinzu"""
334
391
  try:
392
+ # Logo-Container für bessere Anordnung
393
+ logo_container = ttk.Frame(toolbar)
394
+ logo_container.pack(side=tk.LEFT, padx=(0, 20), pady=15)
395
+
335
396
  # Pfad zum Icon ermitteln
336
397
  script_dir = os.path.dirname(os.path.abspath(__file__))
337
- logo_path = os.path.join(script_dir, "assets", "bash-script-maker-32.png")
398
+ logo_path = os.path.join(script_dir, "assets", "bash-script-maker-48.png")
338
399
 
339
400
  if os.path.exists(logo_path):
340
401
  try:
341
402
  from PIL import Image, ImageTk
342
403
 
343
- # Logo laden und für Toolbar optimieren
404
+ # Logo laden - größer für bessere Sichtbarkeit
344
405
  img = Image.open(logo_path)
345
- # Etwas kleiner für die Toolbar (24x24)
346
- img = img.resize((24, 24), Image.Resampling.LANCZOS)
406
+ # Optimale Größe für Toolbar (36x36)
407
+ img = img.resize((36, 36), Image.Resampling.LANCZOS)
347
408
  logo_photo = ImageTk.PhotoImage(img)
348
409
 
349
410
  # Logo-Label erstellen
350
- logo_label = ttk.Label(toolbar, image=logo_photo)
411
+ logo_label = ttk.Label(logo_container, image=logo_photo)
351
412
  logo_label.image = logo_photo # Referenz behalten
352
- logo_label.pack(side=tk.LEFT, padx=(0, 10), pady=20)
413
+ logo_label.pack(side=tk.LEFT, padx=(0, 8))
414
+
415
+ # App-Name-Label hinzufügen
416
+ name_label = ttk.Label(
417
+ logo_container,
418
+ text="Bash-Script-Maker",
419
+ font=("Arial", 12, "bold"),
420
+ foreground="#2c3e50" # Dunkle Farbe für bessere Lesbarkeit
421
+ )
422
+ name_label.pack(side=tk.LEFT, anchor=tk.CENTER)
423
+
424
+ # Version-Label (kleiner) hinzufügen
425
+ version_label = ttk.Label(
426
+ logo_container,
427
+ text=f"v{__version__}",
428
+ font=("Arial", 9),
429
+ foreground="#7f8c8d" # Grau für subtile Version
430
+ )
431
+ version_label.pack(side=tk.LEFT, padx=(5, 0), anchor=tk.CENTER)
353
432
 
354
- # Tooltip hinzufügen
355
- ToolTip(logo_label, text="Bash-Script-Maker v" + __version__)
433
+ # Tooltips hinzufügen
434
+ ToolTip(logo_label, text=f"Bash-Script-Maker v{__version__}")
435
+ ToolTip(name_label, text=f"Bash-Script-Maker v{__version__}")
436
+ ToolTip(version_label, text=f"Version {__version__}")
356
437
 
357
- print("Logo zur Toolbar hinzugefügt")
438
+ print("Logo und App-Name zur Toolbar hinzugefügt")
358
439
 
359
440
  except ImportError:
360
- # Fallback ohne PIL - verwende Text-Logo
441
+ # Fallback ohne PIL - verwende Text-Logo mit Name
361
442
  logo_label = ttk.Label(
362
- toolbar,
443
+ logo_container,
363
444
  text="🖥️",
364
- font=("Arial", 16)
445
+ font=("Arial", 24)
446
+ )
447
+ logo_label.pack(side=tk.LEFT, padx=(0, 8))
448
+
449
+ # App-Name auch im Fallback
450
+ name_label = ttk.Label(
451
+ logo_container,
452
+ text="Bash-Script-Maker",
453
+ font=("Arial", 12, "bold")
365
454
  )
366
- logo_label.pack(side=tk.LEFT, padx=(0, 10), pady=20)
367
- ToolTip(logo_label, text="Bash-Script-Maker v" + __version__)
368
- print("Text-Logo zur Toolbar hinzugefügt")
455
+ name_label.pack(side=tk.LEFT, anchor=tk.CENTER)
456
+
457
+ version_label = ttk.Label(
458
+ logo_container,
459
+ text=f"v{__version__}",
460
+ font=("Arial", 9)
461
+ )
462
+ version_label.pack(side=tk.LEFT, padx=(5, 0), anchor=tk.CENTER)
463
+
464
+ # Tooltips
465
+ ToolTip(logo_label, text=f"Bash-Script-Maker v{__version__}")
466
+ ToolTip(name_label, text=f"Bash-Script-Maker v{__version__}")
467
+ ToolTip(version_label, text=f"Version {__version__}")
468
+
469
+ print("Text-Logo und App-Name zur Toolbar hinzugefügt")
369
470
 
370
471
  else:
371
- print(f"Logo-Datei nicht gefunden: {logo_path}")
472
+ # Nur Text-Branding wenn kein Icon gefunden
473
+ name_label = ttk.Label(
474
+ logo_container,
475
+ text="🖥️ Bash-Script-Maker",
476
+ font=("Arial", 12, "bold")
477
+ )
478
+ name_label.pack(side=tk.LEFT)
479
+
480
+ version_label = ttk.Label(
481
+ logo_container,
482
+ text=f"v{__version__}",
483
+ font=("Arial", 9)
484
+ )
485
+ version_label.pack(side=tk.LEFT, padx=(5, 0), anchor=tk.CENTER)
486
+
487
+ ToolTip(name_label, text=f"Bash-Script-Maker v{__version__}")
488
+ ToolTip(version_label, text=f"Version {__version__}")
489
+
490
+ print(f"Logo-Datei nicht gefunden: {logo_path}, verwende Text-Branding")
372
491
 
373
492
  except Exception as e:
374
493
  print(f"Fehler beim Hinzufügen des Logos: {e}")
494
+ # Minimaler Fallback
495
+ try:
496
+ fallback_label = ttk.Label(toolbar, text="Bash-Script-Maker", font=("Arial", 10, "bold"))
497
+ fallback_label.pack(side=tk.LEFT, padx=(0, 15), pady=20)
498
+ except:
499
+ pass
375
500
 
376
501
  def create_menu(self):
377
502
  """Erstellt das Menü der Anwendung"""
@@ -886,13 +1011,20 @@ class BashScriptMaker:
886
1011
  ScriptInfoDialog(self.root, self.script_name, content)
887
1012
 
888
1013
  def show_about(self):
889
- """Zeigt About-Dialog"""
890
- about_text = _(
891
- "Bash-Script-Maker ist ein GUI-Programm zur einfachen Erstellung von Bash-Scripts.\n\n"
892
- "Erstellt mit Python und Tkinter"
893
- )
894
-
895
- messagebox.showinfo(_("Über Bash-Script-Maker"), about_text)
1014
+ """Zeigt About-Dialog mit Logo"""
1015
+ try:
1016
+ about_dialog = AboutDialog(self.root)
1017
+ about_dialog.grab_set() # Modal dialog
1018
+ about_dialog.wait_window() # Warten bis Dialog geschlossen wird
1019
+ except Exception as e:
1020
+ # Fallback auf einfachen Dialog
1021
+ about_text = _(
1022
+ f"Bash-Script-Maker v{__version__}\n\n"
1023
+ "Ein GUI-Programm zur einfachen Erstellung von Bash-Scripts.\n\n"
1024
+ "Erstellt mit Python und Tkinter\n"
1025
+ "© 2024 SecureBits"
1026
+ )
1027
+ messagebox.showinfo(_("Über Bash-Script-Maker"), about_text)
896
1028
 
897
1029
  def open_documentation(self):
898
1030
  """Öffnet die README.md Datei im Standard-Browser."""
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "bash-script-maker"
7
- version = "1.7.0"
7
+ version = "1.8.0"
8
8
  description = "Ein GUI-Programm zur Erstellung von Bash-Scripts mit visueller Unterstützung"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
@@ -1 +0,0 @@
1
- 1.7.0