-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
executable file
·35 lines (30 loc) · 1.07 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env python3
import wx
from gui import show_selection_dialog
from api import send_request_with_gemini
from controller import delete_selection, get_clipboard, handle_selection, paste_clipboard, send_to_clipboard
def main():
handle_selection()
clipboard = get_clipboard()
delete_selection()
original_sentence = clipboard
try:
# Call the API
improved_sentences = send_request_with_gemini(original_sentence)
app = wx.App(False)
# Show selection dialog
if improved_sentences:
selected_sentence, action = show_selection_dialog(improved_sentences)
else:
selected_sentence, action = original_sentence, 'cancel'
if action == 'ok':
improved_sentence = selected_sentence if selected_sentence else original_sentence
send_to_clipboard(improved_sentence)
else:
raise Exception("No selection made.")
except Exception as e:
send_to_clipboard(original_sentence)
finally:
paste_clipboard()
if __name__ == "__main__":
main()