SheetStateAdapter.java
01 /*
02  * Copyright 2008-2014 the original author or authors.
03  *
04  * Licensed under the Apache License, Version 2.0 (the "License");
05  * you may not use this file except in compliance with the License.
06  * You may obtain a copy of the License at
07  *
08  *     http://www.apache.org/licenses/LICENSE-2.0
09  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package griffon.pivot.support.adapters;
17 
18 import griffon.core.CallableWithArgs;
19 import org.apache.pivot.util.Vote;
20 
21 /**
22  @author Andres Almiray
23  @since 2.0.0
24  */
25 public class SheetStateAdapter implements GriffonPivotAdapter, org.apache.pivot.wtk.SheetStateListener {
26     private CallableWithArgs<Vote> previewSheetClose;
27     private CallableWithArgs<Void> sheetCloseVetoed;
28     private CallableWithArgs<Void> sheetClosed;
29 
30     public CallableWithArgs<Vote> getPreviewSheetClose() {
31         return this.previewSheetClose;
32     }
33 
34     public CallableWithArgs<Void> getSheetCloseVetoed() {
35         return this.sheetCloseVetoed;
36     }
37 
38     public CallableWithArgs<Void> getSheetClosed() {
39         return this.sheetClosed;
40     }
41 
42 
43     public void setPreviewSheetClose(CallableWithArgs<Vote> previewSheetClose) {
44         this.previewSheetClose = previewSheetClose;
45     }
46 
47     public void setSheetCloseVetoed(CallableWithArgs<Void> sheetCloseVetoed) {
48         this.sheetCloseVetoed = sheetCloseVetoed;
49     }
50 
51     public void setSheetClosed(CallableWithArgs<Void> sheetClosed) {
52         this.sheetClosed = sheetClosed;
53     }
54 
55 
56     public org.apache.pivot.util.Vote previewSheetClose(org.apache.pivot.wtk.Sheet arg0, boolean arg1) {
57         if (previewSheetClose != null) {
58             return previewSheetClose.call(arg0, arg1);
59         }
60         return Vote.APPROVE;
61     }
62 
63     public void sheetCloseVetoed(org.apache.pivot.wtk.Sheet arg0, org.apache.pivot.util.Vote arg1) {
64         if (sheetCloseVetoed != null) {
65             sheetCloseVetoed.call(arg0, arg1);
66         }
67     }
68 
69     public void sheetClosed(org.apache.pivot.wtk.Sheet arg0) {
70         if (sheetClosed != null) {
71             sheetClosed.call(arg0);
72         }
73     }
74 
75 }