Stumbled across this, and found that the accepted answer is incorrect, or at least is no longer correct in current versions of Glade.
From within Glade, you can adjust the Position
property under the Packing
tab, whose value determines the index of the widget within its parent.
So in OP's example:
box1 (GtkBox)
|--button1 (GtkButton) (Position: 0)
|--button2 (GtkButton) (Position: 1)
|--button3 (GtkButton) (Position: 2)
Each button would have a Position
value of 0, 1, and 2 respectfully. If you were to change the Position
value of button2
to 0, it would move it up and button1
would then have a Position
value of 1, which changes the order both in the tree and how it is displayed in the designer and final application.
box1 (GtkBox)
|--button2 (GtkButton) (Position: 0)
|--button1 (GtkButton) (Position: 1)
|--button3 (GtkButton) (Position: 2)