Create new Application.AttachmentManager class and move code for saving attachments there from both Application.Controller and MainWindow since aside from needing the latter for dialogs it is independent of both. Create new Components.AttachmentPane widget for diplaying attachents for an email in the ConversationViewer. Update ConversationEmail and ConversationMessage to use these two new classes directly, rather than implementing save management itself or requiring the MainWindow to wire up signals on these classes.
151 lines
5.3 KiB
XML
151 lines
5.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!-- Generated with glade 3.22.1 -->
|
|
<interface>
|
|
<requires lib="gtk+" version="3.20"/>
|
|
<template class="ComponentsAttachmentPane" parent="GtkGrid">
|
|
<property name="name">box</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkSeparator">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkActionBar" id="attachments_actions">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkButton" id="select_all_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">False</property>
|
|
<property name="tooltip_text" translatable="yes">Select all attachments</property>
|
|
<property name="action_name">cap.select-all</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">edit-select-all-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton" id="remove_button">
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">False</property>
|
|
<property name="tooltip_text" translatable="yes">Select all attachments</property>
|
|
<property name="action_name">cap.remove-selected</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">list-remove-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton" id="save_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">False</property>
|
|
<property name="tooltip_text" translatable="yes">Save selected attachments</property>
|
|
<property name="action_name">cap.save-selected</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">document-save-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton" id="open_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">False</property>
|
|
<property name="tooltip_text" translatable="yes">Open selected attachments</property>
|
|
<property name="action_name">cap.open-selected</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">document-open-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<style>
|
|
<class name="background"/>
|
|
</style>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkGrid" id="attachments_container">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">1</property>
|
|
</packing>
|
|
</child>
|
|
<style>
|
|
<class name="view"/>
|
|
<class name="geary-attachment-pane"/>
|
|
</style>
|
|
</template>
|
|
</interface>
|