JavaScript Confirm Box


import tkinter as tk
from tkinter import scrolledtext
from tkinter.font import Font
from PIL import ImageTk, Image
import tkinter.messagebox as messagebox
import tkinter.scrolledtext as tkscrolled
def convert_arabic_to_latin():
    arabic_word = arabic_text.get("1.0", tk.END).strip()
    converted_word = convert_arabic_to_latin_mapping(arabic_word)
    converted_word = capitalize_sentences(converted_word)
    latin_text.delete("1.0", tk.END)
    latin_text.insert(tk.END, converted_word)

def convert_arabic_to_latin_mapping(text):
    # Arabic to Latin mapping
    mapping = {
        'ت': 't',
        'و': 'w',
        'د': 'd',
        'ا': 'a',
        'چ': 'ch',
        'ب': 'b',
        'ج': 'j',
        'ح': 'ḥ',
        'خ': 'kh',
        'ر': 'r',
        'ز': 'z',
        'س': 's',
        'ش': 'sh',
        'ڛ': 'ŝ',
        'ص': 'ṣ',
        'ض': 'ḍ',
        'ط': 'ṭ',
        'ڞ': 'ẑ',
        'ع': 'ʿ',
        'غ': 'gh',
        'ف': 'f',
        'ق': 'q',
        'ك': 'k',
        'ل': 'l',
        'ڸ': 'ḽ',
        'م': 'm',
        'ن': 'n',
        'ه': 'h',
        'ُ': 'u',

    converted_text = ""
    for char in text:
        if char in mapping:
            converted_text += mapping[char]
            if char=='ْ':
            if char =='ّ':
                converted_text += converted_text[len(converted_text)-1]
                converted_text += char

    return converted_text
def capitalize_sentences(text):
    sentences = text.split('. ')
    capitalized_sentences = []
    for sentence in sentences:
        capitalized_sentence = sentence.capitalize()
    return '. '.join(capitalized_sentences)

def clear_text():
    arabic_text.delete("1.0", tk.END)
    latin_text.delete("1.0", tk.END)

def copy_text():
    selected_text = arabic_text.selection_get() if arabic_text.focus_get() == arabic_text else latin_text.selection_get()
    if selected_text:

def paste_text():
    if arabic_text.focus_get() == arabic_text:
        text = window.clipboard_get()
        if text:
            arabic_text.insert(tk.INSERT, text)

""" def resize_background_image(event):
    new_width = event.width
    new_height = event.height
    resized_image = background_image.resize((new_width, new_height), Image.ANTIALIAS)
    global background_photo
    background_photo = ImageTk.PhotoImage(resized_image)
    background_label.config(image=background_photo) """
def on_enter_convert(event):

def on_leave_convert(event):
    convert_button.config(bg="SystemButtonFace", fg="black")

def on_enter_clear(event):
    clear_button.config(bg="red", fg="white")

def on_leave_clear(event):

# Create the main window
window = tk.Tk()
window.title("Arabic to Latin Converter")
window.geometry("600x300")  # Set the initial size of the window (width x height)
window.option_add('*text', '')

# Load the background image
background_image ="socotra.jpg")
background_image = background_image.resize((600, 300), Image.ANTIALIAS)  # Resize the image to fit the window size
background_photo = ImageTk.PhotoImage(background_image)

# Create a Label widget to display the background image
background_label = tk.Label(window, image=background_photo), y=0, relwidth=1, relheight=1)

# Set custom colors
bg_color = "white"
fg_color = "black"

# Create the GUI components
arabic_label = tk.Label(window, text="Arabic Word:", font=("Arial", 14, "bold"))
arabic_text = scrolledtext.ScrolledText(window, width=35, height=5, wrap=tk.WORD, bg=bg_color, fg=fg_color,
                                        font=("Arial", 14, "bold"))
convert_button = tk.Button(window, text="Convert", command=convert_arabic_to_latin, font=("Arial", 12, "bold"))
latin_label = tk.Label(window, text="Latin:", font=("Arial", 14, "bold"))
latin_text = scrolledtext.ScrolledText(window, width=35, height=5, wrap=tk.WORD, bg=bg_color, fg=fg_color,
                                       font=("Arial", 14, "bold"))
clear_button = tk.Button(window, text="Clear", command=clear_text, font=("Arial", 12, "bold"))

# Grid layout
arabic_label.grid(row=0, column=0, padx=5, pady=5, sticky=tk.W)
arabic_text.grid(row=0, column=1, padx=5, pady=5, sticky=tk.W)
convert_button.grid(row=1, column=0, columnspan=2, padx=5, pady=5)
clear_button.grid(row=1, column=1, columnspan=2, padx=5, pady=5)
latin_label.grid(row=2, column=0, padx=5, pady=5, sticky=tk.W)
latin_text.grid(row=2, column=1, padx=5, pady=5, sticky=tk.W)
# Bind hover events to buttons
convert_button.bind("<Enter>", on_enter_convert)
convert_button.bind("<Leave>", on_leave_convert)
clear_button.bind("<Enter>", on_enter_clear)
clear_button.bind("<Leave>", on_leave_clear)
# Copy and Paste options in menu
edit_menu = tk.Menu(window)
edit_menu.add_command(label="Copy", command=copy_text)
edit_menu.add_command(label="Paste", command=paste_text)

# Start the main event loop