================================================================================
CUSTOM UI COMPONENT CREATION PROMPT TEMPLATE
================================================================================

This is a configurable prompt template for creating new custom UI components.
Fill in the sections below with your requirements, then provide the entire
prompt to the AI assistant.

================================================================================
COMPONENT INFORMATION
================================================================================

Component Name: Custom Input Box
Base Class: [e.g., QPushButton, QLineEdit, QWidget]
Purpose: Mainly used for inputting text,

Everthing must be customizable, configurable, and parameterizable.

================================================================================
VISUAL DESIGN
================================================================================

Appearance:
- Shape: custom input box must have these parameters rounded rectangle, circular, custom path
- Default Size: [e.g., width x height in pixels, or scalable] You decide.
- Border Style: [e.g., solid, dashed, none] You decide.
- Border Radius: [e.g., 8px, 12px] You decide.
- Shadow: Add some blur shadow to the input box.

Color Scheme:
- Background Color: Custom Input must support hex or rgba so that the user can color them.
- Text Color: [hex or rgba, e.g., #f3e8ff] same as above.
- Border Color: [hex or rgba] same as above.
- Hover Color: [hex or rgba] same as above.
- Pressed/Active Color: [hex or rgba] same as above.
- Disabled Color: [hex or rgba] same as above.

Animations:

Animations must be predefined and customizable. the user just has to choose from the predefined animations.
used parameter_name: animation_name

- Hover Effect: [e.g., color change, scale, glow] You decide.
- Click Effect: [e.g., press animation, ripple] You decide.
- Duration: [milliseconds, e.g., 200ms] You decide.

================================================================================
FUNCTIONALITY
================================================================================

Core Features:
- [Feature 1] You decide
- [Feature 2] You decide
- [Feature 3] You decide

User Interactions:
- [Interaction 1, e.g., click, hover, drag] You decide
- [Interaction 2]

State Management:
- States: [e.g., normal, hover, pressed, disabled, focused]
- State Transitions: [describe how states change]

================================================================================
CONSTRUCTOR PARAMETERS
================================================================================

Required Parameters:
- parent: [description, e.g., Parent widget]
- [parameter_name]: [type, description, e.g., text: str - Button label]

Optional Parameters:
- [parameter_name]: [type, default value, description]
- [parameter_name]: [type, default value, description]

Color Parameters (if applicable):
- bg_color: [str, default color, description]
- text_color: [str, default color, description]
- [other_color]: [str, default color, description]

================================================================================
KEY METHODS
================================================================================

Methods to Implement:
- [method_name(params)]: [description]
- [method_name(params)]: [description]
- [method_name(params)]: [description]

Signals/Events (if applicable):
- [signal_name]: [when it's emitted, e.g., clicked when user clicks]
- [signal_name]: [description]

================================================================================
STYLING & APPEARANCE
================================================================================

Stylesheet Requirements:
- Font: [family, size, weight, e.g., Segoe UI, 12px, 600]
- Padding: [e.g., 12px 16px]
- Margin: [e.g., 0px]
- Transparency: [if applicable, e.g., 0.9 opacity]

Special Effects:
- Glassmorphism: [yes/no, if yes: describe blur, transparency]
- Gradient: [yes/no, if yes: describe gradient]
- Glow/Shadow: [yes/no, if yes: describe effect]

================================================================================
EXAMPLES & USE CASES
================================================================================

Basic Usage Example:
[Provide a simple code example showing how to use the component]

Advanced Usage Example:
[Provide a more complex example with customization]

================================================================================
ADDITIONAL REQUIREMENTS
================================================================================

Dependencies:
- [Any additional imports needed, e.g., QTimer, QPropertyAnimation]

Integration:
- Should integrate with: [e.g., global color palette, custom scrollbar]
- Compatibility: [e.g., works with CustomMainWindow, CustomLabel]

Documentation:
- Include docstrings: [yes/no]
- Include type hints: [yes/no]
- Include examples in docstring: [yes/no]

Testing:
- Should include: [e.g., basic functionality test, color test]

================================================================================
NOTES & SPECIAL CONSIDERATIONS
================================================================================

[Any additional notes, constraints, or special requirements]

================================================================================
HOW TO USE THIS TEMPLATE
================================================================================

1. Copy this entire file
2. Fill in all the [bracketed sections] with your specific requirements
3. Remove sections that don't apply to your component
4. Provide the completed prompt to the AI assistant
5. The AI will create the component based on your specifications

Example sections you might remove:
- Animations (if not needed)
- Signals/Events (if not applicable)
- Glassmorphism (if not desired)

================================================================================

CREATE a single file for this documentation that is for this [EXAMPLES & USE CASES, 
ADDITIONAL REQUIREMENTS, NOTES & SPECIAL CONSIDERATIONS, HOW TO USE THIS TEMPLATE]

================================================================================
Update the DOCUMENTATION.md file with the new component documentation.
================================================================================
