Update app.py
Browse files
app.py
CHANGED
@@ -118,39 +118,48 @@ def main():
|
|
118 |
if "prompt" not in st.session_state:
|
119 |
st.session_state["prompt"] = ""
|
120 |
|
121 |
-
# Input field for the prompt
|
122 |
-
prompt = st.text_input(
|
123 |
-
|
124 |
-
|
|
|
|
|
|
|
|
|
|
|
125 |
if prompt:
|
|
|
|
|
126 |
# Add a spinner while generating the image
|
127 |
with st.spinner('Generating image...'):
|
128 |
image = generate_image(prompt)
|
129 |
if image:
|
130 |
st.session_state["image"] = image # Store generated image in session state
|
131 |
-
st.image(image, caption="Generated Image")
|
132 |
-
st.session_state["prompt"] = prompt # Store the prompt in session state
|
133 |
else:
|
134 |
st.warning("Please enter a prompt.")
|
135 |
|
136 |
-
# Show
|
137 |
if st.session_state["image"]:
|
|
|
|
|
138 |
# Download button
|
139 |
image_bytes = io.BytesIO()
|
140 |
st.session_state["image"].save(image_bytes, format='PNG')
|
141 |
-
|
142 |
st.download_button(
|
143 |
label="Download Image",
|
144 |
data=image_bytes.getvalue(),
|
145 |
file_name="generated_image.png",
|
146 |
-
mime="image/png"
|
|
|
147 |
)
|
148 |
-
|
149 |
# Reset button
|
150 |
-
if st.button("Reset"):
|
151 |
# Clear session state variables
|
152 |
st.session_state["image"] = None
|
153 |
st.session_state["prompt"] = ""
|
|
|
154 |
|
155 |
# Clear UI by resetting query params
|
156 |
st.query_params = {}
|
|
|
118 |
if "prompt" not in st.session_state:
|
119 |
st.session_state["prompt"] = ""
|
120 |
|
121 |
+
# Input field for the prompt, tied to session state
|
122 |
+
prompt = st.text_input(
|
123 |
+
"Enter a prompt for image generation:",
|
124 |
+
value=st.session_state["prompt"],
|
125 |
+
key="prompt_input"
|
126 |
+
)
|
127 |
+
|
128 |
+
# Generate Image button
|
129 |
+
if st.button("Generate Image", key="generate_button"):
|
130 |
if prompt:
|
131 |
+
# Save prompt to session state
|
132 |
+
st.session_state["prompt"] = prompt
|
133 |
# Add a spinner while generating the image
|
134 |
with st.spinner('Generating image...'):
|
135 |
image = generate_image(prompt)
|
136 |
if image:
|
137 |
st.session_state["image"] = image # Store generated image in session state
|
|
|
|
|
138 |
else:
|
139 |
st.warning("Please enter a prompt.")
|
140 |
|
141 |
+
# Show the image if it exists in the session state
|
142 |
if st.session_state["image"]:
|
143 |
+
st.image(st.session_state["image"], caption="Generated Image")
|
144 |
+
|
145 |
# Download button
|
146 |
image_bytes = io.BytesIO()
|
147 |
st.session_state["image"].save(image_bytes, format='PNG')
|
148 |
+
|
149 |
st.download_button(
|
150 |
label="Download Image",
|
151 |
data=image_bytes.getvalue(),
|
152 |
file_name="generated_image.png",
|
153 |
+
mime="image/png",
|
154 |
+
key="download_button"
|
155 |
)
|
156 |
+
|
157 |
# Reset button
|
158 |
+
if st.button("Reset", key="reset_button"):
|
159 |
# Clear session state variables
|
160 |
st.session_state["image"] = None
|
161 |
st.session_state["prompt"] = ""
|
162 |
+
st.session_state["prompt_input"] = ""
|
163 |
|
164 |
# Clear UI by resetting query params
|
165 |
st.query_params = {}
|