Sortable Kivy List
<p>I'm creating a Kivy/Python app that generates a formatted report. The report itself is generated with pandas dataframes and then written to Excel. I'd like to add something to the UI that would allow users to apply custom sorting to the report.</p>

<p>So, for instance, if the dataframe has a "Category" field with values "Cat1", "Cat2", "Cat3", I'd like to add a feature where a user could organize those categories in a custom order.</p>

<p>What I'm envisioning is a list of items on the Kivy UI that a user could re-sort by dragging and dropping the items? Or, even just a simple list with an up/down arrow would suffice. I believe this is generally called a listbox, but I can't seem to find that widget in Kivy. Currently, I'm managing sorting by just having an external mapping document, but I'd like to integrate this into the app functionality instead. </p>

<p>Note: I'm not looking for detailed code or anything--just some ideas on what modules/widgets/approach might work here.</p>

<p>Any thoughts would be greatly appreciated!</p>

<p>Thanks</p>

<p>Store the data inside a <a href="https://kivy.org/docs/api-kivy.properties.html#kivy.properties.ListProperty" rel="nofollow">list property</a>.</p>

<p>Create a table out of a grid layout, on which you would like to show the content of the <code>data</code> list. The headers of the table would be buttons that do some sorting on the list. Each time the list changes, an <code>on_data</code> callback will be triggered. Use the callback to redraw the table rows.</p>

python pandas kivy