2 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 %typemap(csimports) Dali::Window %{
20 using System.Runtime.InteropServices;
24 %typemap(cscode) Dali::Window %{
26 public void SetAcceptFocus( bool accept )
28 NDalicPINVOKE.SetAcceptFocus(swigCPtr, accept);
29 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
32 public bool IsFocusAcceptable()
34 return NDalicPINVOKE.IsFocusAcceptable(swigCPtr);
35 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
40 NDalicPINVOKE.Show(swigCPtr);
41 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
46 NDalicPINVOKE.Hide(swigCPtr);
47 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
50 public void IsVisible()
52 NDalicPINVOKE.IsVisible(swigCPtr);
53 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
56 public class WindowFocusChangedEventArgs : EventArgs
58 public bool FocusGained
65 private WindowFocusChangedEventCallbackType _windowFocusChangedEventCallback;
66 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
67 private delegate void WindowFocusChangedEventCallbackType(bool focusGained);
68 private event EventHandler<WindowFocusChangedEventArgs> _windowFocusChangedEventHandler;
70 public event EventHandler<WindowFocusChangedEventArgs> WindowFocusChanged
74 if (_windowFocusChangedEventHandler == null)
76 _windowFocusChangedEventCallback = OnWindowFocusedChanged;
77 WindowFocusChangedSignal().Connect(_windowFocusChangedEventCallback);
80 _windowFocusChangedEventHandler += value;
84 _windowFocusChangedEventHandler -= value;
86 if (_windowFocusChangedEventHandler == null && _windowFocusChangedEventCallback != null)
88 WindowFocusChangedSignal().Disconnect(_windowFocusChangedEventCallback);
93 private void OnWindowFocusedChanged(bool focusGained)
95 WindowFocusChangedEventArgs e = new WindowFocusChangedEventArgs();
97 e.FocusGained = focusGained;
99 if (_windowFocusChangedEventHandler != null)
101 _windowFocusChangedEventHandler(this, e);
105 public WindowFocusSignalType WindowFocusChangedSignal() {
106 WindowFocusSignalType ret = new WindowFocusSignalType(NDalicPINVOKE.FocusChangedSignal(swigCPtr), false);
107 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
113 %ignore Dali::Window::IndicatorVisibilityChangedSignal();