src/main/java/ru/indvdum/mywork/vaadin/MyWorkApplication.java
changeset 12 93ea5ae33f02
parent 9 6a02cfcc7460
     1.1 --- a/src/main/java/ru/indvdum/mywork/vaadin/MyWorkApplication.java	Tue Aug 23 14:48:38 2011 +0300
     1.2 +++ b/src/main/java/ru/indvdum/mywork/vaadin/MyWorkApplication.java	Tue Aug 23 16:21:44 2011 +0300
     1.3 @@ -49,7 +49,7 @@
     1.4          public void menuSelected(MenuItem selectedItem) {
     1.5          	EditDayDialog dialog = null;
     1.6  			try {
     1.7 -				dialog = new EditDayDialog(thisObject, EditState.CREATE, null);
     1.8 +				dialog = new EditDayDialog(thisObject, null);
     1.9  			} catch (Exception e) {
    1.10  				e.printStackTrace();
    1.11  			}
    1.12 @@ -60,7 +60,7 @@
    1.13      	public void menuSelected(MenuItem selectedItem) {
    1.14      		EditTaskDialog dialog = null;
    1.15      		try {
    1.16 -    			dialog = new EditTaskDialog(thisObject, EditState.CREATE, null);
    1.17 +    			dialog = new EditTaskDialog(thisObject, null);
    1.18      		} catch (Exception e) {
    1.19      			e.printStackTrace();
    1.20      		}
    1.21 @@ -71,7 +71,49 @@
    1.22      	public void menuSelected(MenuItem selectedItem) {
    1.23      		EditWorkDialog dialog = null;
    1.24      		try {
    1.25 -    			dialog = new EditWorkDialog(thisObject, EditState.CREATE, null);
    1.26 +    			dialog = new EditWorkDialog(thisObject, null);
    1.27 +    		} catch (Exception e) {
    1.28 +    			e.printStackTrace();
    1.29 +    		}
    1.30 +    		getMainWindow().addWindow(dialog);
    1.31 +    	}
    1.32 +    };
    1.33 +    private Command editDayCommand = new Command() {
    1.34 +    	public void menuSelected(MenuItem selectedItem) {
    1.35 +    		EditDayDialog dialog = null;
    1.36 +    		Day day = EM.find(Day.class, dayTable.getValue());
    1.37 +    		if(day == null)
    1.38 +    			return;
    1.39 +    		try {
    1.40 +    			dialog = new EditDayDialog(thisObject, day);
    1.41 +    		} catch (Exception e) {
    1.42 +    			e.printStackTrace();
    1.43 +    		}
    1.44 +    		getMainWindow().addWindow(dialog);
    1.45 +    	}
    1.46 +    };
    1.47 +    private Command editTaskCommand = new Command() {
    1.48 +    	public void menuSelected(MenuItem selectedItem) {
    1.49 +    		EditTaskDialog dialog = null;
    1.50 +    		Task task = EM.find(Task.class, taskTable.getValue());
    1.51 +    		if(task == null)
    1.52 +    			return;
    1.53 +    		try {
    1.54 +    			dialog = new EditTaskDialog(thisObject, task);
    1.55 +    		} catch (Exception e) {
    1.56 +    			e.printStackTrace();
    1.57 +    		}
    1.58 +    		getMainWindow().addWindow(dialog);
    1.59 +    	}
    1.60 +    };
    1.61 +    private Command editWorkCommand = new Command() {
    1.62 +    	public void menuSelected(MenuItem selectedItem) {
    1.63 +    		EditWorkDialog dialog = null;
    1.64 +    		Work work = EM.find(Work.class, workTable.getValue());
    1.65 +    		if(work == null)
    1.66 +    			return;
    1.67 +    		try {
    1.68 +    			dialog = new EditWorkDialog(thisObject, work);
    1.69      		} catch (Exception e) {
    1.70      			e.printStackTrace();
    1.71      		}
    1.72 @@ -94,13 +136,17 @@
    1.73  		vlMain.setSpacing(true);
    1.74  		tabSheet.addTab(vlMain, "Main page", null);
    1.75  		
    1.76 -		MenuBar menubar = new MenuBar();
    1.77 -		MenuItem file = menubar.addItem("File", null);
    1.78 +		MenuBar menuBar = new MenuBar();
    1.79 +		MenuItem file = menuBar.addItem("File", null);
    1.80  		MenuItem newItem = file.addItem("New", null);
    1.81  		newItem.addItem("Day...", newDayCommand);
    1.82          newItem.addItem("Task...", newTaskCommand);
    1.83          newItem.addItem("Work...", newWorkCommand);
    1.84 -        vlMain.addComponent(menubar);
    1.85 +        MenuItem edit = menuBar.addItem("Edit", null);
    1.86 +        edit.addItem("Day...", editDayCommand);
    1.87 +        edit.addItem("Task...", editTaskCommand);
    1.88 +        edit.addItem("Work...", editWorkCommand);
    1.89 +        vlMain.addComponent(menuBar);
    1.90  		
    1.91  		LocalEntityProvider dayProvider = new CachingLocalEntityProvider(Day.class);
    1.92  		dayProvider.setEntityManager(EM);
    1.93 @@ -114,6 +160,13 @@
    1.94  		dayTable.setSizeFull();
    1.95  		dayTable.setContainerDataSource(dayContainer);
    1.96  		dayTable.setVisibleColumns(new String[]{
    1.97 +				"formattedDay",
    1.98 +				"startWork",
    1.99 +				"endWork",
   1.100 +				"hours",
   1.101 +		});
   1.102 +		dayTable.setSortContainerPropertyId("day");
   1.103 +		dayTable.setColumnHeaders(new String[]{
   1.104  				"day",
   1.105  				"startWork",
   1.106  				"endWork",
   1.107 @@ -147,7 +200,7 @@
   1.108  		workContainer.setEntityProvider(workProvider);
   1.109  		
   1.110  		workTable = new Table();
   1.111 -		workTable.setSelectable(true);
   1.112 +		workTable.setSelectable(false);
   1.113  		workTable.setEditable(false);
   1.114  		workTable.setImmediate(true);
   1.115  		workTable.setSizeFull();
   1.116 @@ -159,6 +212,7 @@
   1.117  				"result",
   1.118  		});
   1.119  		workTable.setColumnWidth("result", 200);
   1.120 +		workTable.setSortContainerPropertyId("day");
   1.121  		vlMain.addComponent(workTable);
   1.122  		vlMain.setExpandRatio(workTable, 1f);
   1.123  	}