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