Skip to content

Commit

Permalink
# IGNITE-32 Minor changes of GUI: fixed selected fields renaming and …
Browse files Browse the repository at this point in the history
…update value for text editable columns on focus lost for special case (click on other row in same table).
  • Loading branch information
akuznetsov-gridgain committed Feb 12, 2015
1 parent c0f872e commit 90c4e11
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 21 deletions.
Expand Up @@ -165,7 +165,11 @@ public PojoField(String dbName, int dbType, String javaName, String javaTypeName


keyProp.addListener(new ChangeListener<Boolean>() { keyProp.addListener(new ChangeListener<Boolean>() {
@Override public void changed(ObservableValue<? extends Boolean> val, Boolean oldVal, Boolean newVal) { @Override public void changed(ObservableValue<? extends Boolean> val, Boolean oldVal, Boolean newVal) {
if (!newVal) if (newVal) {
if (!use())
useProp.set(true);
}
else
akProp.set(false); akProp.set(false);
} }
}); });
Expand Down
Expand Up @@ -786,14 +786,24 @@ private void createGeneratePane() {
TableColumn<PojoDescriptor, String> keyClsCol = textColumn("Key Class Name", "keyClassName", "Key class name", TableColumn<PojoDescriptor, String> keyClsCol = textColumn("Key Class Name", "keyClassName", "Key class name",
new TextColumnValidator<PojoDescriptor>() { new TextColumnValidator<PojoDescriptor>() {
@Override public boolean valid(PojoDescriptor rowVal, String newVal) { @Override public boolean valid(PojoDescriptor rowVal, String newVal) {
return checkClassName(rowVal, newVal, true); boolean valid = checkClassName(rowVal, newVal, true);

if (valid)
rowVal.keyClassName(newVal);

return valid;
} }
}); });


TableColumn<PojoDescriptor, String> valClsCol = textColumn("Value Class Name", "valueClassName", "Value class name", TableColumn<PojoDescriptor, String> valClsCol = textColumn("Value Class Name", "valueClassName", "Value class name",
new TextColumnValidator<PojoDescriptor>() { new TextColumnValidator<PojoDescriptor>() {
@Override public boolean valid(PojoDescriptor rowVal, String newVal) { @Override public boolean valid(PojoDescriptor rowVal, String newVal) {
return checkClassName(rowVal, newVal, false); boolean valid = checkClassName(rowVal, newVal, true);

if (valid)
rowVal.valueClassName(newVal);

return valid;
} }
}); });


Expand Down Expand Up @@ -826,6 +836,8 @@ private void createGeneratePane() {
return false; return false;
} }


rowVal.javaName(newVal);

return true; return true;
} }
}); });
Expand Down Expand Up @@ -907,11 +919,13 @@ private void createGeneratePane() {


String target = "\"" + sel + "\""; String target = "\"" + sel + "\"";


Collection<PojoDescriptor> selPojos = isFields Collection<PojoDescriptor> selPojos = pojosTbl.getSelectionModel().getSelectedItems();
? Collections.singleton(curPojo)
: pojosTbl.getSelectionModel().getSelectedItems(); Collection<PojoField> selFields = fieldsTbl.getSelectionModel().getSelectedItems();


if (selPojos.isEmpty()) { boolean isEmpty = isFields ? selFields.isEmpty() : selPojos.isEmpty();

if (isEmpty) {
MessageBox.warningDialog(owner, "Please select " + src + " to rename " + target + "!"); MessageBox.warningDialog(owner, "Please select " + src + " to rename " + target + "!");


return; return;
Expand All @@ -936,7 +950,10 @@ private void createGeneratePane() {
break; break;


default: default:
renameJavaNames(selPojos, regex, replace); if (isFields)
renameFieldsJavaNames(selFields, regex, replace);
else
renamePojosJavaNames(selPojos, regex, replace);
} }
} }
catch (Exception e) { catch (Exception e) {
Expand All @@ -948,15 +965,19 @@ private void createGeneratePane() {
@Override public void handle(ActionEvent evt) { @Override public void handle(ActionEvent evt) {
String sel = replaceCb.getSelectionModel().getSelectedItem(); String sel = replaceCb.getSelectionModel().getSelectedItem();


boolean renFields = "Java names".equals(sel); boolean isFields = "Java names".equals(sel) && curTbl == fieldsTbl;


String src = (renFields && curTbl == fieldsTbl ? "fields" : "tables"); String src = isFields ? "fields" : "tables";


String target = "\"" + sel + "\""; String target = "\"" + sel + "\"";


Collection<PojoDescriptor> selPojos = pojosTbl.getSelectionModel().getSelectedItems(); Collection<PojoDescriptor> selPojos = pojosTbl.getSelectionModel().getSelectedItems();


if (selPojos.isEmpty()) { Collection<PojoField> selFields = fieldsTbl.getSelectionModel().getSelectedItems();

boolean isEmpty = isFields ? selFields.isEmpty() : selPojos.isEmpty();

if (isEmpty) {
MessageBox.warningDialog(owner, "Please select " + src + "to revert " + target + "!"); MessageBox.warningDialog(owner, "Please select " + src + "to revert " + target + "!");


return; return;
Expand All @@ -976,7 +997,10 @@ private void createGeneratePane() {
break; break;


default: default:
revertJavaNames(selPojos); if (isFields)
revertFieldsJavaNames(selFields);
else
revertPojosJavaNames(selPojos);
} }
} }
}) })
Expand Down Expand Up @@ -1040,7 +1064,7 @@ private void createGeneratePane() {
} }


/** /**
* Rename key class name for selected tables. * Rename key class name for selected POJOs.
* *
* @param selPojos Selected POJOs to rename. * @param selPojos Selected POJOs to rename.
* @param regex Regex to search. * @param regex Regex to search.
Expand All @@ -1052,7 +1076,7 @@ private void renameKeyClassNames(Collection<PojoDescriptor> selPojos, String reg
} }


/** /**
* Rename value class name for selected tables. * Rename value class name for selected POJOs.
* *
* @param selPojos Selected POJOs to rename. * @param selPojos Selected POJOs to rename.
* @param regex Regex to search. * @param regex Regex to search.
Expand All @@ -1064,20 +1088,32 @@ private void renameValueClassNames(Collection<PojoDescriptor> selPojos, String r
} }


/** /**
* Rename fields java name for current or selected tables. * Rename fields java name for selected POJOs.
* *
* @param selPojos Selected POJOs to rename. * @param selPojos Selected POJOs to rename.
* @param regex Regex to search. * @param regex Regex to search.
* @param replace Text for replacement. * @param replace Text for replacement.
*/ */
private void renameJavaNames(Collection<PojoDescriptor> selPojos, String regex, String replace) { private void renamePojosJavaNames(Collection<PojoDescriptor> selPojos, String regex, String replace) {
for (PojoDescriptor pojo : selPojos) for (PojoDescriptor pojo : selPojos)
for (PojoField field : pojo.fields()) for (PojoField field : pojo.fields())
field.javaName(field.javaName().replaceAll(regex, replace)); field.javaName(field.javaName().replaceAll(regex, replace));
} }


/** /**
* Revert key class name for selected tables to initial value. * Rename fields java name for current POJO.
*
* @param selFields Selected fields for current POJO to rename.
* @param regex Regex to search.
* @param replace Text for replacement.
*/
private void renameFieldsJavaNames(Collection<PojoField> selFields, String regex, String replace) {
for (PojoField field : selFields)
field.javaName(field.javaName().replaceAll(regex, replace));
}

/**
* Revert key class name for selected POJOs to initial value.
* *
* @param selPojos Selected POJOs to revert. * @param selPojos Selected POJOs to revert.
*/ */
Expand All @@ -1087,7 +1123,7 @@ private void revertKeyClassNames(Collection<PojoDescriptor> selPojos) {
} }


/** /**
* Revert value class name for selected tables to initial value. * Revert value class name for selected POJOs to initial value.
* *
* @param selPojos Selected POJOs to revert. * @param selPojos Selected POJOs to revert.
*/ */
Expand All @@ -1097,15 +1133,25 @@ private void revertValueClassNames(Collection<PojoDescriptor> selPojos) {
} }


/** /**
* Revert fields java name for selected or current table to initial value. * Revert fields java name for selected POJOs to initial value.
* *
* @param selPojos Selected POJOs to revert. * @param selPojos Selected POJOs to revert.
*/ */
private void revertJavaNames(Collection<PojoDescriptor> selPojos) { private void revertPojosJavaNames(Collection<PojoDescriptor> selPojos) {
for (PojoDescriptor pojo : selPojos) for (PojoDescriptor pojo : selPojos)
pojo.revertJavaNames(); pojo.revertJavaNames();
} }


/**
* Revert fields java name for current POJO to initial value.
*
* @param selFields Selected POJO fields to revert.
*/
private void revertFieldsJavaNames(Collection<PojoField> selFields) {
for (PojoField field : selFields)
field.resetJavaName();
}

/** /**
* @return POJOs checked in table-tree-view. * @return POJOs checked in table-tree-view.
*/ */
Expand Down Expand Up @@ -1157,7 +1203,7 @@ private int getIntProp(String key, int dflt) {
try { try {
return Integer.parseInt(val); return Integer.parseInt(val);
} }
catch (NumberFormatException e) { catch (NumberFormatException ignored) {
return dflt; return dflt;
} }


Expand Down

0 comments on commit 90c4e11

Please sign in to comment.