This is a very basic example showing how to use a clutter.Text
for information display or multi-line text editing.
File: main.py
import sys import clutter def main(): stage_color = clutter.Color(0, 0, 0, 255) actor_color = clutter.Color(255, 255, 204, 255) # Get the stage and set its size and color stage = clutter.Stage() stage.set_size(800, 200) stage.set_color(stage_color) # Add a non-editable text actor to the stage text = clutter.Text() # Setup text properties text.set_color(actor_color) text.set_text("Non-editable text: Wizard imps and sweat sock pimps," "interstellar mongrel nymphs.") text.set_font_name("Sans 12") text.set_editable(False) text.set_line_wrap(False) # Discover the preferred height and use that height min_height, natural_height = text.get_preferred_height(750) text.set_size(750, natural_height) text.set_position(5, 5) stage.add(text) text.show() # Add a multi-line editable text actor to the stage text = clutter.Text() # Setup text properties text.set_color(actor_color) text.set_text( "Editable text: And as I sat there brooding on the old, unknown world, I thought of " "Gatsby's wonder when he first picked out the green light at the end of " "Daisy's dock. He had come a long way to this blue lawn and his dream " "must have seemed so close that he could hardly fail to grasp it. He did " "not know that it was already behind him, somewhere back in that vast " "obscurity beyond the city, where the dark fields of the republic rolled " "on under the night.") text.set_font_name("Sans 12") text.set_editable(True) text.set_line_wrap(True) # Discover the preferred height and use that height min_height, natural_height = text.get_preferred_height(750) text.set_size(750, natural_height) text.set_position(5, 50) stage.add(text) text.show() # Set focus to handle key presses on the stage stage.set_key_focus(text) # Show the stage stage.show_all() stage.connect('destroy', clutter.main_quit) # Start the main loop, so we can respond to events clutter.main() return 0 if __name__ == '__main__': sys.exit(main())