1716ba89e7f459f49ea85070d4710c1d79d715298George Mount/*
2716ba89e7f459f49ea85070d4710c1d79d715298George Mount * Copyright (C) 2015 The Android Open Source Project
3716ba89e7f459f49ea85070d4710c1d79d715298George Mount *
4716ba89e7f459f49ea85070d4710c1d79d715298George Mount * Licensed under the Apache License, Version 2.0 (the "License");
5716ba89e7f459f49ea85070d4710c1d79d715298George Mount * you may not use this file except in compliance with the License.
6716ba89e7f459f49ea85070d4710c1d79d715298George Mount * You may obtain a copy of the License at
7716ba89e7f459f49ea85070d4710c1d79d715298George Mount *
8716ba89e7f459f49ea85070d4710c1d79d715298George Mount *      http://www.apache.org/licenses/LICENSE-2.0
9716ba89e7f459f49ea85070d4710c1d79d715298George Mount *
10716ba89e7f459f49ea85070d4710c1d79d715298George Mount * Unless required by applicable law or agreed to in writing, software
11716ba89e7f459f49ea85070d4710c1d79d715298George Mount * distributed under the License is distributed on an "AS IS" BASIS,
12716ba89e7f459f49ea85070d4710c1d79d715298George Mount * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13716ba89e7f459f49ea85070d4710c1d79d715298George Mount * See the License for the specific language governing permissions and
14716ba89e7f459f49ea85070d4710c1d79d715298George Mount * limitations under the License.
15716ba89e7f459f49ea85070d4710c1d79d715298George Mount */
16716ba89e7f459f49ea85070d4710c1d79d715298George Mountpackage android.databinding.testapp.vo;
17716ba89e7f459f49ea85070d4710c1d79d715298George Mount
18716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.content.Context;
19ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mountimport android.databinding.BaseObservable;
20716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.databinding.ObservableBoolean;
21716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.graphics.Outline;
22716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.media.MediaPlayer;
23716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.text.Editable;
24716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.ContextMenu;
25716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.DragEvent;
26716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.KeyEvent;
27716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.MenuItem;
28716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.MotionEvent;
29716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.View;
30716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.ViewStub;
31716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.WindowInsets;
32716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.view.animation.Animation;
33716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.AbsListView;
34716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.AdapterView;
35716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.CalendarView;
36716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.Chronometer;
37716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.CompoundButton;
38716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.ExpandableListView;
39716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.NumberPicker;
40716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.RadioGroup;
41716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.RatingBar;
42716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.SeekBar;
43716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.TextView;
44716ba89e7f459f49ea85070d4710c1d79d715298George Mountimport android.widget.TimePicker;
45716ba89e7f459f49ea85070d4710c1d79d715298George Mount
46716ba89e7f459f49ea85070d4710c1d79d715298George Mountpublic class ListenerBindingObject {
47716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public static int lastClick = 0;
48716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean inflateCalled;
49716ba89e7f459f49ea85070d4710c1d79d715298George Mount    private final Context mContext;
50975c05c00dae9193a636c4775df81d8665fc6749George Mount    public boolean wasRunnableRun;
51716ba89e7f459f49ea85070d4710c1d79d715298George Mount
52716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public final ObservableBoolean clickable = new ObservableBoolean();
53716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public final ObservableBoolean useOne = new ObservableBoolean();
54716ba89e7f459f49ea85070d4710c1d79d715298George Mount
55716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public ListenerBindingObject(Context context) {
56716ba89e7f459f49ea85070d4710c1d79d715298George Mount        clickable.set(true);
57716ba89e7f459f49ea85070d4710c1d79d715298George Mount        this.mContext = context;
58716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
59716ba89e7f459f49ea85070d4710c1d79d715298George Mount
60716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onMovedToScrapHeap(View view) { }
61716ba89e7f459f49ea85070d4710c1d79d715298George Mount
62716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount,
63716ba89e7f459f49ea85070d4710c1d79d715298George Mount            int totalItemCount) {}
64716ba89e7f459f49ea85070d4710c1d79d715298George Mount
65716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onScrollStateChanged(AbsListView view, int scrollState) { }
66716ba89e7f459f49ea85070d4710c1d79d715298George Mount
67716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onMenuItemClick(MenuItem item) {
68716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
69716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
70716ba89e7f459f49ea85070d4710c1d79d715298George Mount
71716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { }
72716ba89e7f459f49ea85070d4710c1d79d715298George Mount
73716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
74716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
75716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
76716ba89e7f459f49ea85070d4710c1d79d715298George Mount
77716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { }
78716ba89e7f459f49ea85070d4710c1d79d715298George Mount
79716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onNothingSelected(AdapterView<?> parent) { }
80716ba89e7f459f49ea85070d4710c1d79d715298George Mount
81716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onDismiss() { }
82716ba89e7f459f49ea85070d4710c1d79d715298George Mount
83716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public CharSequence fixText(CharSequence invalidText) {
84716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return invalidText;
85716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
86716ba89e7f459f49ea85070d4710c1d79d715298George Mount
87716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean isValid(CharSequence text) {
88716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
89716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
90716ba89e7f459f49ea85070d4710c1d79d715298George Mount
91716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) { }
92716ba89e7f459f49ea85070d4710c1d79d715298George Mount
93716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onChronometerTick(Chronometer chronometer) { }
94716ba89e7f459f49ea85070d4710c1d79d715298George Mount
95716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { }
96716ba89e7f459f49ea85070d4710c1d79d715298George Mount
97716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onChildClick(ExpandableListView parent, View v, int groupPosition,
98716ba89e7f459f49ea85070d4710c1d79d715298George Mount            int childPosition, long id) {
99716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
100716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
101716ba89e7f459f49ea85070d4710c1d79d715298George Mount
102716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
103716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
104716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
105716ba89e7f459f49ea85070d4710c1d79d715298George Mount
106716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onGroupCollapse(int groupPosition) { }
107716ba89e7f459f49ea85070d4710c1d79d715298George Mount
108716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onGroupExpand(int groupPosition) { }
109716ba89e7f459f49ea85070d4710c1d79d715298George Mount
110716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public String format(int value) {
111716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return null;
112716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
113716ba89e7f459f49ea85070d4710c1d79d715298George Mount
114716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onValueChange(NumberPicker picker, int oldVal, int newVal) { }
115716ba89e7f459f49ea85070d4710c1d79d715298George Mount
116716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onScrollStateChange(NumberPicker view, int scrollState) { }
117716ba89e7f459f49ea85070d4710c1d79d715298George Mount
118716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onCheckedChanged(RadioGroup group, int checkedId) { }
119716ba89e7f459f49ea85070d4710c1d79d715298George Mount
120716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { }
121716ba89e7f459f49ea85070d4710c1d79d715298George Mount
122716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onClose() {
123716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
124716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
125716ba89e7f459f49ea85070d4710c1d79d715298George Mount
126716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onQueryTextChange(String newText) {
127716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
128716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
129716ba89e7f459f49ea85070d4710c1d79d715298George Mount
130716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onQueryTextSubmit(String query) {
131716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
132716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
133716ba89e7f459f49ea85070d4710c1d79d715298George Mount
134716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onSuggestionClick(int position) {
135716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
136716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
137716ba89e7f459f49ea85070d4710c1d79d715298George Mount
138716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onSuggestionSelect(int position) {
139716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
140716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
141716ba89e7f459f49ea85070d4710c1d79d715298George Mount
142716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { }
143716ba89e7f459f49ea85070d4710c1d79d715298George Mount
144716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onStartTrackingTouch(SeekBar seekBar) { }
145716ba89e7f459f49ea85070d4710c1d79d715298George Mount
146716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onStopTrackingTouch(SeekBar seekBar) { }
147716ba89e7f459f49ea85070d4710c1d79d715298George Mount
148716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onTabChanged(String tabId) { }
149716ba89e7f459f49ea85070d4710c1d79d715298George Mount
150716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
151716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return false;
152716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
153716ba89e7f459f49ea85070d4710c1d79d715298George Mount
154716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void afterTextChanged(Editable s) { }
155716ba89e7f459f49ea85070d4710c1d79d715298George Mount
156716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void beforeTextChanged(CharSequence s, int start, int count, int after) { }
157716ba89e7f459f49ea85070d4710c1d79d715298George Mount
158716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onTextChanged(CharSequence s, int start, int before, int count) { }
159716ba89e7f459f49ea85070d4710c1d79d715298George Mount
160716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onTimeChanged(TimePicker view, int hourOfDay, int minute) { }
161716ba89e7f459f49ea85070d4710c1d79d715298George Mount
162716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onClick(View view) { }
163716ba89e7f459f49ea85070d4710c1d79d715298George Mount
164716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onCompletion(MediaPlayer mp) { }
165716ba89e7f459f49ea85070d4710c1d79d715298George Mount
166716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onError(MediaPlayer mp, int what, int extra) {
167716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
168716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
169716ba89e7f459f49ea85070d4710c1d79d715298George Mount
170716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onInfo(MediaPlayer mp, int what, int extra) {
171716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
172716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
173716ba89e7f459f49ea85070d4710c1d79d715298George Mount
174716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onPrepared(MediaPlayer mp) { }
175716ba89e7f459f49ea85070d4710c1d79d715298George Mount
176716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public WindowInsets onApplyWindowInsets(View v, WindowInsets insets) {
177716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return null;
178716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
179716ba89e7f459f49ea85070d4710c1d79d715298George Mount
180716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onCreateContextMenu(ContextMenu menu, View v,
181716ba89e7f459f49ea85070d4710c1d79d715298George Mount            ContextMenu.ContextMenuInfo menuInfo) { }
182716ba89e7f459f49ea85070d4710c1d79d715298George Mount
183716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onDrag(View v, DragEvent event) {
184716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
185716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
186716ba89e7f459f49ea85070d4710c1d79d715298George Mount
187716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onFocusChange(View v, boolean hasFocus) { }
188716ba89e7f459f49ea85070d4710c1d79d715298George Mount
189716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onGenericMotion(View v, MotionEvent event) {
190716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
191716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
192716ba89e7f459f49ea85070d4710c1d79d715298George Mount
193716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onHover(View v, MotionEvent event) {
194716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
195716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
196716ba89e7f459f49ea85070d4710c1d79d715298George Mount
197716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onKey(View v, int keyCode, KeyEvent event) {
198716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
199716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
200716ba89e7f459f49ea85070d4710c1d79d715298George Mount
201716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onLongClick(View v) {
202716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
203716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
204716ba89e7f459f49ea85070d4710c1d79d715298George Mount
205716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onSystemUiVisibilityChange(int visibility) { }
206716ba89e7f459f49ea85070d4710c1d79d715298George Mount
207716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public boolean onTouch(View v, MotionEvent event) {
208716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return true;
209716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
210716ba89e7f459f49ea85070d4710c1d79d715298George Mount
211716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void getOutline(View view, Outline outline) { }
212716ba89e7f459f49ea85070d4710c1d79d715298George Mount
213716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onViewAttachedToWindow(View v) { }
214716ba89e7f459f49ea85070d4710c1d79d715298George Mount
215716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onViewDetachedFromWindow(View v) { }
216716ba89e7f459f49ea85070d4710c1d79d715298George Mount
217716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onChildViewAdded(View parent, View child) { }
218716ba89e7f459f49ea85070d4710c1d79d715298George Mount
219716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onChildViewRemoved(View parent, View child) { }
220716ba89e7f459f49ea85070d4710c1d79d715298George Mount
221716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onAnimationEnd(Animation animation) { }
222716ba89e7f459f49ea85070d4710c1d79d715298George Mount
223716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onAnimationRepeat(Animation animation) { }
224716ba89e7f459f49ea85070d4710c1d79d715298George Mount
225716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onAnimationStart(Animation animation) { }
226716ba89e7f459f49ea85070d4710c1d79d715298George Mount
227716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onInflate(ViewStub stub, View inflated) {
228716ba89e7f459f49ea85070d4710c1d79d715298George Mount        inflateCalled = true;
229716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
230716ba89e7f459f49ea85070d4710c1d79d715298George Mount
231716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public View makeView() {
232716ba89e7f459f49ea85070d4710c1d79d715298George Mount        return new View(mContext);
233716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
234716ba89e7f459f49ea85070d4710c1d79d715298George Mount
235716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onClick1(View view) {
236716ba89e7f459f49ea85070d4710c1d79d715298George Mount        lastClick = 1;
237716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
238716ba89e7f459f49ea85070d4710c1d79d715298George Mount
239716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public static void onClick2(View view) {
240716ba89e7f459f49ea85070d4710c1d79d715298George Mount        lastClick = 2;
241716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
242716ba89e7f459f49ea85070d4710c1d79d715298George Mount
243716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onClick3(View view) {
244716ba89e7f459f49ea85070d4710c1d79d715298George Mount        lastClick = 3;
245716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
246716ba89e7f459f49ea85070d4710c1d79d715298George Mount
247716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public static void onClick4(View view) {
248716ba89e7f459f49ea85070d4710c1d79d715298George Mount        lastClick = 4;
249716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
250716ba89e7f459f49ea85070d4710c1d79d715298George Mount
251975c05c00dae9193a636c4775df81d8665fc6749George Mount    public void runnableRun() {
252975c05c00dae9193a636c4775df81d8665fc6749George Mount        this.wasRunnableRun = true;
253975c05c00dae9193a636c4775df81d8665fc6749George Mount    }
254975c05c00dae9193a636c4775df81d8665fc6749George Mount
255716ba89e7f459f49ea85070d4710c1d79d715298George Mount    public void onFoo() {
256716ba89e7f459f49ea85070d4710c1d79d715298George Mount    }
257716ba89e7f459f49ea85070d4710c1d79d715298George Mount
258793e979f25e190162eacf46d6a4efc3efc1d2f91George Mount    public void onBar() {}
259793e979f25e190162eacf46d6a4efc3efc1d2f91George Mount
260793e979f25e190162eacf46d6a4efc3efc1d2f91George Mount    public boolean onBar(View view) {
261793e979f25e190162eacf46d6a4efc3efc1d2f91George Mount        return true;
262793e979f25e190162eacf46d6a4efc3efc1d2f91George Mount    }
263793e979f25e190162eacf46d6a4efc3efc1d2f91George Mount
264ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mount    public static class Inner extends BaseObservable {
265ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mount        public boolean clicked;
266ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mount        public void onClick(View view) {
267ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mount            clicked = true;
268ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mount        }
269ec3f23a318203a54ad6aea658ea452948087b73bGeorge Mount    }
270716ba89e7f459f49ea85070d4710c1d79d715298George Mount}
271