"""Creates a top row UI with prompts, generate button, styles, extra little buttons for things, and enables some functionality related to their operation"""
self.prompt=gr.Textbox(label="Prompt",elem_id=f"{self.id_part}_prompt",show_label=False,lines=3,placeholder="Prompt\n(Press Ctrl+Enter to generate, Alt+Enter to skip, Esc to interrupt)",elem_classes=["prompt"])
self.negative_prompt=gr.Textbox(label="Negative prompt",elem_id=f"{self.id_part}_neg_prompt",show_label=False,lines=3,placeholder="Negative prompt\n(Press Ctrl+Enter to generate, Alt+Enter to skip, Esc to interrupt)",elem_classes=["prompt"])
self.interrupt=gr.Button('Interrupt',elem_id=f"{self.id_part}_interrupt",elem_classes="generate-box-interrupt",tooltip="End generation immediately or after completing current batch")
self.skip=gr.Button('Skip',elem_id=f"{self.id_part}_skip",elem_classes="generate-box-skip",tooltip="Stop generation of current batch and continues onto next batch")
self.paste=ToolButton(value=paste_symbol,elem_id="paste",tooltip="Read generation parameters from prompt or last generation if prompt is empty into user interface.")
self.apply_styles=ToolButton(value=ui_prompt_styles.styles_materialize_symbol,elem_id=f"{self.id_part}_style_apply",tooltip="Apply all selected styles to prompts.")
ifself.is_img2img:
self.button_interrogate=ToolButton('📎',tooltip='Interrogate CLIP - use CLIP neural network to create a text describing the image, and put it into the prompt field',elem_id="interrogate")
self.button_deepbooru=ToolButton('📦',tooltip='Interrogate DeepBooru - use DeepBooru neural network to create a text describing the image, and put it into the prompt field',elem_id="deepbooru")