The panel now reflects whether title block templates are read-only.

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/branches/0.3@1475 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavier
2012-01-23 07:21:09 +00:00
parent 3fc9409559
commit 0473244284

View File

@@ -371,19 +371,20 @@ void ElementsPanelWidget::updateButtons() {
prj_move_diagram_up -> setEnabled(is_writable && diagram_position > 0); prj_move_diagram_up -> setEnabled(is_writable && diagram_position > 0);
prj_move_diagram_down -> setEnabled(is_writable && diagram_position < project_diagrams_count - 1); prj_move_diagram_down -> setEnabled(is_writable && diagram_position < project_diagrams_count - 1);
setElementsActionEnabled(false); setElementsActionEnabled(false);
} else if ( } else if (elements_panel -> selectedItemIsATitleBlockTemplatesDirectory()) {
elements_panel -> selectedItemIsATitleBlockTemplatesDirectory() ||
elements_panel -> selectedItemIsATitleBlockTemplate()
) {
QTreeWidgetItem *item = elements_panel -> currentItem(); QTreeWidgetItem *item = elements_panel -> currentItem();
TitleBlockTemplateLocation location = elements_panel -> locationForTitleBlockTemplate(item); TitleBlockTemplateLocation location = elements_panel -> locationForTitleBlockTemplate(item);
bool is_writable; tbt_add -> setEnabled(!location.isReadOnly());
if (location.isValid()) { tbt_edit -> setEnabled(false); // would not make sense
is_writable = !location.parentCollection() -> isReadOnly(); tbt_remove -> setEnabled(false); // would not make sense
tbt_add -> setEnabled(is_writable); setElementsActionEnabled(false);
tbt_edit -> setEnabled(is_writable); } else if (elements_panel -> selectedItemIsATitleBlockTemplate()) {
tbt_remove -> setEnabled(is_writable); QTreeWidgetItem *item = elements_panel -> currentItem();
} TitleBlockTemplateLocation location = elements_panel -> locationForTitleBlockTemplate(item);
tbt_add -> setEnabled(false); // would not make sense
tbt_edit -> setEnabled(true); // the tbt editor has a read-only mode
// deleting a tbt requires its parent collection to be writable
tbt_remove -> setEnabled(location.parentCollection() && !(location.parentCollection() -> isReadOnly()));
setElementsActionEnabled(false); setElementsActionEnabled(false);
} }
} }