Skip to content

Commit 9152072

Browse files
committed
#178: show color of project
1 parent 71e5ffb commit 9152072

File tree

3 files changed

+25
-7
lines changed

3 files changed

+25
-7
lines changed

src/main/java/de/doubleslash/keeptime/view/ExternalProjectsSyncController.java

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import javafx.scene.control.cell.CheckBoxTableCell;
1818
import javafx.scene.layout.HBox;
1919
import javafx.scene.layout.VBox;
20+
import javafx.scene.shape.Circle;
2021
import javafx.util.converter.LocalTimeStringConverter;
2122
import org.slf4j.Logger;
2223
import org.slf4j.LoggerFactory;
@@ -122,8 +123,8 @@ public void initForDate(LocalDate currentReportDate, List<Work> currentWorkItems
122123
if (!isMappedInHeimat) {
123124
canBeSynced = "Not mapped in Heimat";
124125
}
125-
list.add(new TableRow(project, isMappedInHeimat, canBeSynced, heimatNotes, keeptimeNotes, keeptimeNotes, heimatTimeSeconds,
126-
projectWorkSeconds, projectWorkSeconds));
126+
list.add(new TableRow(project, isMappedInHeimat, canBeSynced, heimatNotes, keeptimeNotes, keeptimeNotes,
127+
heimatTimeSeconds, projectWorkSeconds, projectWorkSeconds));
127128
}
128129
final ObservableList<TableRow> items = FXCollections.observableArrayList(list);
129130
mappingTableView.setItems(items);
@@ -148,10 +149,27 @@ private void initialize() {
148149
shouldSyncColumn.setEditable(true);
149150
shouldSyncColumn.setPrefWidth(50);
150151

151-
TableColumn<TableRow, String> projectColumn = new TableColumn<>("Project");
152-
projectColumn.setCellValueFactory(data -> new SimpleStringProperty(data.getValue().project.getName()));
152+
TableColumn<TableRow, Project> projectColumn = new TableColumn<>("Project");
153+
projectColumn.setCellValueFactory(data -> new SimpleObjectProperty(data.getValue().project));
154+
projectColumn.setCellFactory(column -> new TableCell<>() {
155+
//private final Label label = new Label();
156+
157+
@Override
158+
protected void updateItem(Project item, boolean empty) {
159+
super.updateItem(item, empty);
160+
if (empty || item == null) {
161+
setGraphic(null);
162+
setText(null);
163+
} else {
164+
//label.setText(item.getName());
165+
setText(item.getName());
166+
final Circle circle = new Circle(6, item.getColor());
167+
this.setGraphic(circle);
168+
}
169+
}
170+
});
153171
projectColumn.setPrefWidth(100);
154-
// TODO set color
172+
155173
TableColumn<TableRow, TableRow> timeColumn = new TableColumn<>("Time");
156174
timeColumn.setCellValueFactory(data -> new SimpleObjectProperty<>(data.getValue())); // Placeholder property
157175

src/main/java/de/doubleslash/keeptime/view/ReportController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ private void showSyncStage() throws IOException {
160160
//settingsController.setStage(settingsStage);
161161
settingsStage.initModality(Modality.APPLICATION_MODAL);
162162
settingsStage.setTitle("External Project Sync");
163-
settingsStage.setResizable(false);
163+
settingsStage.setResizable(true);
164164
settingsStage.getIcons().add(new Image(Resources.getResource(RESOURCE.ICON_MAIN).toString()));
165165

166166
final Scene settingsScene = new Scene(settingsRoot);

src/main/resources/layouts/externalProjectSync.fxml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
<AnchorPane prefHeight="600.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.doubleslash.keeptime.view.ExternalProjectsSyncController">
1111
<children>
12-
<TableView fx:id="mappingTableView" layoutY="50.0" prefHeight="442.0" prefWidth="600.0" />
12+
<TableView fx:id="mappingTableView" layoutY="50.0" prefHeight="442.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" />
1313
<Label text="Sync dialog">
1414
<font>
1515
<Font name="System Bold" size="15.0" />

0 commit comments

Comments
 (0)