* Added LayoutGroup and LayoutItem classes in NUI.
This was done by using bindings wrapper classes for LayoutItem,
LayoutGroup, LayoutMeasureSpec, LayoutLength, and LayoutMeasuredSize.
Change-Id: I19e28bdff59a62cf1c8e8711f50f9f0e8f1c119a
* Layouting support in NUI
Change-Id: I3d6f688d869faa81c34385db37feceb1d8c1d0c0
* Fixed disposed bug and removed RegisterChildProperties API usage.
Change-Id: I7b71bd1a3a03306897abdf3c263c6bbb65c1bff8
* RootLayout added to Window
Change-Id: Ie47ceec452b5f254950263bdaf661e9e3fe86d1f
* All Layers have an Absolute layout
Change-Id: I08281a25b2b73822b45f5c6a567b574b5af74fb4
* Set View.Size2D sets layout minimum size if exists.
Change-Id: Ide73c78957d9ee5d4799bfff4aa2232b87ffa536
* [NUI] Minimize public api for xaml
Change-Id: Ib1426b1956a2af307bd6128d6b97067b0d732847
* Renaming of rootlayer in Layer.cs
Change-Id: I583f49caaad819cabaca83b09c9c7dd9c2b9a331
* Fix NUI nested layout issue
Change-Id: I68edd6cf8295e06a52655d84b8ce039a4e1f1008
* [NUI] Back-sync Samsung/TizenFX into dalihub/TizenFX
Change-Id: Ib63e792bc3474c9226506f30889994219e237ec1
* [NUI] Remove tabs and redundant spaces
Change-Id: I1d512d7f478e532f76629b2529995386820fc764
* Sync dalihub/TizenFX and Samsung/TizenFX
- [NUI] Remove apis which are using internal APIs (#324)
Some apis are using DALi internal APIs.
Clean up these wrong apis to prevent future errors.
Signed-off-by: minho.sun <minho.sun@samsung.com>
Change-Id: I77f773ec84f93f69684c2bdad26d9721f8ed705d
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Sync dalihub/TizenFX and Samsung/TizenFX for NUI-XAML related changes
Change-Id: Ied6a4e33d462712672e65763572c6aa88065a897
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Support multi-cascade property setting for Size2D and Position2D
Change-Id: Ibeb9e9ec639742b78054fe8592167170ea0f00d2
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Add Mouse button type to identify clicked button kind
Change-Id: Id336dacccff8192a17cda552ba8ea2ba01121002
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* [NUI] Fix dereferenced error
Value trans, which has null value,
is dereferenced in member access expression trans.Name
Change-Id: I5b7fa2a0e96689ff0cc0821f2e931ed3c4001e9d
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI]Remove ContentProperty attribute and update sample
Change-Id: I0fbb60bf00c609779b6f5ff4d8aff58a26a8819e
* [NUI] Fix children count of LayoutGroup bug
Change-Id: I73c3b597b161a2dbf4a52d37e6f5a0ab4858c11b
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Make Layout APIs as internal ones (will be changed as public APIs later)
Conflicts:
src/Tizen.NUI/src/internal/Layouting/LayoutGroupWrapper.cs
src/Tizen.NUI/src/internal/Layouting/LayoutItemWrapper.cs
Change-Id: Ia64e9216d10ecc986e0e977f2e0633a03813faec
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Fix View Size2D.
We force Size2D by setting fixed width & height specifications.
There is no really another way in new layouting without breaking
new layouting design.
Also MinimumSize will set now Layout.MinimumSize.
Change-Id: I65c7eaab8210c83b9097426a14c8877173d11f90
* [NUI] Change Parameter type of KeyboardRepeatInfo APIs
- Changed the parameters type of KeyboardRepeatInfo APIs
: 'double' type -> 'float' type
Change-Id: I3940e44a1a2c116988e8c947ae81d118ac266000
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
* [NUI] Fix getting ClippingMode error
Change-Id: I2379ec6adda1442e819d2adbaa9751e5dd154996
* [NUI] Fix animation flickering issue.
Change-Id: Idd3e28ac861a6fa33ad316e4bcae6a7b2199c0de
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* [NUI] Remove redundant logs
Change-Id: Ic7ec157fe8117b613d0d008f68e74cf7c4bccf64
* [NUI] Fix KeyValue issue
Change-Id: I1970a61633fba277379a43035cf84ec2871d1cdd
* [NUI]public BindableObject.GetValue and BindableObject.SetValue to enable other modules(EX.Tizen.TV.NUI) to implement data binding.
Change-Id: Ibb048e668e765a96f1e8553951e4073b181e9a84
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* [NUI]Add protect codes in API View::Add
1. Add protect codes, so that if the child is null, this API won't don anything.
Change-Id: Icfd7e2cbb08b99ed962660edb88e8797bad2b654
* [NUI] public gesture detector.
Change-Id: Ife9902fe77b43f2c422a1a2ebeaf474d13e67589
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* GridLayout added
Change-Id: I67916a0e2a8efde6fd8d28daac79bca39d679d10
* Add PropertyValue.Get function for RelativeVector2, RelativeVector3, and RelativeVector4 type.
Change-Id: I181c51a6eea0a94721b28a48d8187673a3f0b88b
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* Explict assigning of Layouts to children
Allows legacy GridContainer to display it's children.
CustomLayouts children get a LayoutItem and displayed.
Change-Id: Ic3f900ae01800de77695b85a57661f886ee060b7
* [NUI] Add DestroyContext call before disposing TextField/TextEditor
In order to speed up IME hide, temporarily add DestroyContext call.
Change-Id: Id93c99f4d45061d4e406d36ced7a0ec09c8f2c34
* [NUI] VisualMap revising
Here are some changes:
Add VisualFittingMode property
Add Atlasing property
Add Shadow,Underline,Outline,Background property
Add RenderIfTransparent property
Change-Id: I8d85f9d1a438cb6fbb636f79c7438e9134e1df8f
* [NUI] Add visual test example
Change-Id: I25f41d969f7b98a494a4fa1716b0335c09ab5026
* [NUI] Add friend assembly for Tizen.TV.NUI.Component
Change-Id: I2fdc02205c03aa98260035fb81998d68514c030e
* View.cs assignement error and logging fix
Change-Id: Ic43213bb7e565f03f83d27df153d095b0e9f7143
* [NUI] Add support for changing the Rendering behavior
Change-Id: Ibbe3627659132fd40105482761795f62a92d1856
* Size2D set updates measure spec for all Views
Previously Size2D set only updated the WIDTH/HEIGHT MEASURESPEC
for Views that already had a Layout set.
But if the Size2D was set before the View added to it's parent
then the set size would not update the measure specs.
Change-Id: I28e731e5e6c6318231b5ba25108bf2daa9cd3411
* [NUI] Avoid raising InputMethodContext reference count
Change-Id: I25e89f41daa41008c81ae1b46fbb82c75a98a011
* [NUI] Add getter property for VisualFittingMode
Change-Id: I1ee389dd4a84f153e4a5d063fe3331a9525757eb
* [NUI] VisualMaps revising continue
Here are changes:
1. Update VisualFittingMode
2. Remove EditorBrowsable attribute
Change-Id: I2f272e822ba227fe255031b3574db325505e90e1
* [NUI] Add LinearLayout Alignment and Weight
Change-Id: I0ed3010fd27f8f4cb26126efc5547a301c69cf38
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
* SetLayoutRequired, IsLayoutRequired View API added
Change-Id: I6b4351901ad841c04f92b22be62c43f7f20b9263
* Fixes required after https://review.tizen.org/gerrit/#/c/189231/
Removal of dangerous float conversion
Change-Id: I6766c8747865c229a1df3ed669a1d9ab90fefdc4
* Update LayoutItem doxygen for Minimum(Width|Height) API.
Change-Id: I0ead74f919c73823cb6f4b241bea81cbcdde4c98
* [NUI] Fix LayoutItemWrapperImpl null issue
Change-Id: I158533d132eb81c4681d8ff622124ba45bfe0e4b
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix RenderingBehavior issue
Change-Id: I35b83e115fd60d2b43ed49c2a35a0f34377e55c2
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Support Resource path when using xaml
Change-Id: I066c4a6b051bfdcc5fa6b26f9f784a2be5a255a7
* [NUI] Public ChildAdded,ChildRemoved,PropertySet events & properties of TableView.CellPosition
Change-Id: I77b58a63e863b16e9eeef8c09da9ae5160f5e735
* [NUI] Public some apis of TableView,Animation,NUIApplication
Change-Id: I280e6389cb9d2aa537d72c183b1547ee807fcfd6
* Layer SetLayoutingRequired for added Views
Change-Id: I7e9ead91ddec74fee998bdafc0e9249ffe250453
* [NUI] Add comment
Add Size, Size2D comment
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
Change-Id: Ic790ea0af14e9aa76314e92ac74a034ab2f7985c
* [NUI] Fix ImageLoadThread issue
PLM ID : [
DF181025-02207],[
DF181005-00132],[
DF180906-00491]
heap-use-after-free issue using ASAN.
The application's destructor was not called after terminated.
The Join of ImageLoadThread was not called in ImageLoadThread's destructor.
The cause is that AnimationImpl is still referenced in C#.
Resolve by explicitly calling dispose.
Change-Id: Ica66a8a7a17ff305777c173be33e0a196213e566
* All Views in a tree can be layouts
Prior to this fix a View with children within a View would
not become a layout if the parent View did not have SetLayout
explicitly called on it.
Change-Id: Ibf9b214f907a0ea8df30f54269626747c50499ca
* [NUI] Set LayoutItem Width/Height specification
Change-Id: Idec264329f6dc20db4692fba84ac8ee1f95067aa
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Public some apis for TCT and fix an issue
Here are some changes:
1. public ScrollViewPagePathEffect class
2. public TypeRegistry class
3. public PinchGesture constructor
4. public SetScrollPropertySource api
5. Fix ScrollInterval event issue
Change-Id: I649f0fc464a5af0453475b7ef0dcf4df614eb34e
* [NUI] Modify since_tizen tag
Change-Id: Ib9ee882177d2372b8f132542cb235a3fcae5e734
* [NUI] Fix build error
Change-Id: Ib1ff4dcb142ce09539dbef3b567f649e40459527
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* LayoutGroup to layout children
Change-Id: Idff81189013e4cb0e85a8bbf13e268170b8aad31
* [NUI] Add reverse support for parse
Change-Id: Ia6f55508e34cf5adbf23d0f9acd4f69da7b6d3c5
* Disable layouting until set Layout
Added a (static) flag that is set once a Layout is set on any View.
Until this flag is set automatic Layout setting will not occur
Change-Id: Ieff5ed12df75a062a899831681f138c5aa3b6e1f
* [NUI] Fix ParentOrigin doesn't work when using XAML
Change-Id: I53e4b18b6c24db79c16c75b758613113152c5b25
* Remove build warnings
Change-Id: I8744e8f690a4e93b199dc762c14607bd8b191718
* VisualFactory Instance to retreive from native
VisualFactory.Get() is deprecated whilst Instance just gets the C# class.
Added call to native to return the native VisualFactory when Instance used.
Change-Id: I3be36e8f6cb70a2a1b2128c7d934fa45fe5bf570
* [NUI] Fix State issue of View
Change-Id: Ide87c43406e55b9399f191dd76f8fb0b68b0cae9
* Map non dependant ResizePolicies to Specs.
Maps NaturalSize, FillToParent and FitToChildren to the
new layouting specifications.
NaturalSize is mapped to a fixed value.
Parent relative mappings not done here, need to be done in the
measure once parent sizes known.
Change-Id: I1f11a9dca126541cd534a386583fc36f97646ed4
* [NUI] Clean NUI codes from Adaptor.cs to Window.cs
Change-Id: Ic1e5458dd1b3b4ac43cff028204254ac378d2f86
* [NUI] Add test sample for C# binding of MatchSystemLanguageDirection
Change-Id: I0ac4e82c0e026ee1c5074ec00fb4677c4690ddfe
* Remove StereoMode
Change-Id: If19a2e403114bf5375e914584e1e7fa513f7d889
* Sync dalihub and Samsung's TizenFX codes
Change-Id: I634fbe56ff9772c05f5ba59736289b3eca7d3def
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* [NUI] Remove deprecated APIs in native DALi
Change-Id: Icc5d90e6e5752fc3b24ce3ea29cd11a89280b4b7
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
* [NUI] Clean code: BaseComponents,UIComponents,CustomView
Change-Id: I6fbd47154f179ba3a908d140f0cfb267c1e76c2d
* [NUI] Manual merge from tizen50
Merged patches from tizenfx tizen_50 branch
- [NUI] Fix Svace issue (#534), Add to check Null value (View.cs)
- [NUI] Fix SizeWidth/Height issue (#555) (View.cs)
- [NUI] ResizePolicy UseNaturalSize mapped to WrapContent (#613) (View.cs)
- Improve the performance when firstly create the View (#642) (ImageView.cs, Scrollable.cs, TableView.cs, TextEditor.cs, TextField.cs, TextLabel.cs, VideoView.cs, View.cs)
- [NUI] Remove GL/VK if-else, reduce dll size (#649) (LayoutPINVOKE.cs, ManualPINVOKE.cs, NDalicPINVOKE.cs, NUIApplication.cs)
Change-Id: I846ad3353dd7d6ef78ec096565e491d7a6eef44a
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* [NUI] Sync dalihub and Samsung's TizenFX codes.
Change-Id: I8278896c39209e076cc7e1cce3fee63a6e3a53ad
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] modify GetHashCode()
Change-Id: Ib642ba64e746fb811be7a5e7e2cb4e82d5c6eb8a
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix VD svace issue
- add null check
- add lock
Change-Id: I706d1b0314e1e9096597eedc01593932945286e1
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix VD Svace issue
Change-Id: I032ed4e562603441be4d26be68e29e0081e8c917
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Remove all warnings
Change-Id: I399e6395c83664040999f4f204f51970de1dc5df
* [NUI] Add API for get the original size of image
* [NUI] Codacy error fix
Change-Id: Ib407c7be01ad4e42913bf7896edc050e9b4bd370
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
* Make some apis as inhouse, will be internal later
Change-Id: I0fc398a3b33eaab5fd12df5e8f183d9c94ab7049
* Adding LayoutController
LayoutController from C# exclusive Layouting (LayoutingEx)
where all layouting in processed in the NUI side.
Change-Id: Ic97166e51cd2ef173f6685659f53f53253c93b21
* [NUI] Fix NUI Manual TCT issue
Add Null Checker
Change-Id: If07ebc246bad5a55f5614a10fb2f63f4bdd4115e
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix PropertyMap setting issue
Change-Id: I90548287836a4e4338c3a6d2dd5c1802ef24f876
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix svace issue
Change-Id: I014294612530f600c14c237484f95dfff0c5ec96
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Update comments of ImfManager and InputMethodContext
Change-Id: I72cdb3665f2e6ee3d2e355c7d18e41f74c09bba6
* Override Equals function for Color.
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* [NUI] Remove unuseful ApplicationExtensions
Change-Id: Iba33bce373883d5f049e6d4e146d9e3dd33fdf44
* Fix ImageView issues:
(1)Cannot get the correct ResourceUrl after seting the Border.
(2)The ImageView with empty url will show the default picture after seting the Border(Actualy it should show nothing).
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
* add support for CustomView OnTouch callback
Change-Id: I713a91e931e58b38a09c4838a2a3fd0ace5de749
* Adding MeasureSpecification class
Class for C# exclusive layouting
Change-Id: I189fcf297c098e0b0446466de3aa0f4dadb26448
* Adding LayoutLengthEx class
Change-Id: Ic12e7d33eaa50f66bdcd55a058f1562ad42ab4ad
* Adding LayoutSizeEx class
Change-Id: I15738a2fc8c40da90ebe89888cf1779b9124b98e
* Adding MeasuredSizeEx
Change-Id: Ia8fc53d8c1700e90d00870eef22fea9b6a0b1169
* [NoMerge]ElmSharp
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix ABI break (#731)
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NoMerge]ElmSharp.Wearable
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* Fix inhouse API
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* Fix build warnings
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix codacy
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* [NUI] Fix codcay
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* fix build error
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* fix codacy
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* fix codacy
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
* fix codacy
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
{
Window.Instance.DisconnectNativeSignals();
}
-
}
/**
{
lock (this)
{
- NUIApplicationBatteryLowEventArgs e = new NUIApplicationBatteryLowEventArgs();
+ NUIApplicationBatteryLowEventArgs e = new NUIApplicationBatteryLowEventArgs();
- // Populate all members of "e" (NUIApplicationBatteryLowEventArgs) with real data
- e.BatteryStatus = status;
- _applicationBatteryLowEventHandler?.Invoke(this, e);
- }
+ // Populate all members of "e" (NUIApplicationBatteryLowEventArgs) with real data
+ e.BatteryStatus = status;
+ _applicationBatteryLowEventHandler?.Invoke(this, e);
+ }
}
/**
{
lock (this)
{
- NUIApplicationMemoryLowEventArgs e = new NUIApplicationMemoryLowEventArgs();
+ NUIApplicationMemoryLowEventArgs e = new NUIApplicationMemoryLowEventArgs();
- // Populate all members of "e" (NUIApplicationMemoryLowEventArgs) with real data
- e.MemoryStatus = status;
- _applicationMemoryLowEventHandler?.Invoke(this, e);
- }
+ // Populate all members of "e" (NUIApplicationMemoryLowEventArgs) with real data
+ e.MemoryStatus = status;
+ _applicationMemoryLowEventHandler?.Invoke(this, e);
+ }
}
/**
+++ /dev/null
-/*
- * Copyright(c) 2017 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-namespace Tizen.NUI
-{
-
- internal class ApplicationExtensions : global::System.IDisposable
- {
- private global::System.Runtime.InteropServices.HandleRef swigCPtr;
- protected bool swigCMemOwn;
-
- internal ApplicationExtensions(global::System.IntPtr cPtr, bool cMemoryOwn)
- {
- swigCMemOwn = cMemoryOwn;
- swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
- }
-
- internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ApplicationExtensions obj)
- {
- return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
- }
-
- //A Flag to check who called Dispose(). (By User or DisposeQueue)
- private bool isDisposeQueued = false;
- //A Flat to check if it is already disposed.
- protected bool disposed = false;
-
- ~ApplicationExtensions()
- {
- if (!isDisposeQueued)
- {
- isDisposeQueued = true;
- DisposeQueue.Instance.Add(this);
- }
- }
-
- public void Dispose()
- {
- //Throw excpetion if Dispose() is called in separate thread.
- if (!Window.IsInstalled())
- {
- throw new System.InvalidOperationException("This API called from separate thread. This API must be called from MainThread.");
- }
-
- if (isDisposeQueued)
- {
- Dispose(DisposeTypes.Implicit);
- }
- else
- {
- Dispose(DisposeTypes.Explicit);
- System.GC.SuppressFinalize(this);
- }
- }
-
- protected virtual void Dispose(DisposeTypes type)
- {
- if (disposed)
- {
- return;
- }
-
- if (type == DisposeTypes.Explicit)
- {
- //Called by User
- //Release your own managed resources here.
- //You should release all of your own disposable objects here.
-
- }
-
- //Release your own unmanaged resources here.
- //You should not access any managed member here except static instance.
- //because the execution order of Finalizes is non-deterministic.
-
- if (swigCPtr.Handle != global::System.IntPtr.Zero)
- {
- if (swigCMemOwn)
- {
- swigCMemOwn = false;
- NDalicPINVOKE.delete_ApplicationExtensions(swigCPtr);
- }
- swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
- }
-
- disposed = true;
- }
-
-
- public ApplicationExtensions() : this(NDalicPINVOKE.new_ApplicationExtensions__SWIG_0(), true)
- {
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public ApplicationExtensions(Application application) : this(NDalicPINVOKE.new_ApplicationExtensions__SWIG_1(Application.getCPtr(application)), true)
- {
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public void Init()
- {
- NDalicPINVOKE.ApplicationExtensions_Init(swigCPtr);
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public void Start()
- {
- NDalicPINVOKE.ApplicationExtensions_Start(swigCPtr);
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public void Terminate()
- {
- NDalicPINVOKE.ApplicationExtensions_Terminate(swigCPtr);
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public void Pause()
- {
- NDalicPINVOKE.ApplicationExtensions_Pause(swigCPtr);
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public void Resume()
- {
- NDalicPINVOKE.ApplicationExtensions_Resume(swigCPtr);
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- public void LanguageChange()
- {
- NDalicPINVOKE.ApplicationExtensions_LanguageChange(swigCPtr);
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- }
-
- }
-
-}
--- /dev/null
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+using System;
+using System.ComponentModel;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI
+{
+ /// <summary>
+ /// [Draft] A type that represents a layout length. Currently, this implies pixels, but could be extended to handle device dependant sizes, etc.
+ /// </summary>
+ internal class LayoutLengthEx : IEquatable<LayoutLengthEx>
+ {
+ private readonly float _value;
+
+ /// <summary>
+ /// [Draft] Constructor from an int
+ /// </summary>
+ /// <param name="value">Int to initialize with.</param>
+ public LayoutLengthEx(int value)
+ {
+ _value = value;
+ }
+
+ /// <summary>
+ /// [Draft] Constructor from a float
+ /// </summary>
+ /// <param name="value">Float to initialize with.</param>
+ public LayoutLengthEx(float value)
+ {
+ _value = value;
+ }
+
+ /// <summary>
+ /// [Draft] Constructor from a LayoutLength
+ /// </summary>
+ /// <param name="layoutLength">LayoutLength object to initialize with.</param>
+ public LayoutLengthEx(LayoutLengthEx layoutLength)
+ {
+ _value = layoutLength._value;
+ }
+
+ /// <summary>
+ /// [Draft] Return value as rounded value (whole number), best used as final output
+ /// </summary>
+ /// <returns>The layout length value as a rounded whole number.</returns>
+ public float AsRoundedValue()
+ {
+ return (float)Math.Round((decimal)_value, MidpointRounding.AwayFromZero);
+ }
+
+ /// <summary>
+ /// [Draft] Return value as the raw decimal value, best used for calculations
+ /// </summary>
+ /// <returns>The layout length value as the raw decimal value.</returns>
+ public float AsDecimal()
+ {
+ return _value;
+ }
+
+ /// <summary>
+ /// [Draft] The == operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value</param>
+ /// <returns>true if LayoutLengths are equal</returns>
+ public static bool operator ==(LayoutLengthEx arg1, LayoutLengthEx arg2)
+ {
+ return arg1.Equals(arg2);
+ }
+
+ /// <summary>
+ /// [Draft] The != operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value</param>
+ /// <returns>true if LayoutLengths are not equal</returns>
+ public static bool operator !=(LayoutLengthEx arg1, LayoutLengthEx arg2)
+ {
+ return !arg1.Equals(arg2);
+ }
+
+ /// <summary>
+ /// Determines whether the specified object is equal to the current object.
+ /// </summary>
+ /// <param name="obj">The object to compare with the current object.</param>
+ /// <returns>true if equal LayoutLength, else false.</returns>
+ public override bool Equals(object obj)
+ {
+ LayoutLengthEx layoutLengthEx = obj as LayoutLengthEx;
+ if (layoutLengthEx != null)
+ {
+ return Equals(layoutLengthEx);
+ }
+ return false;
+ }
+
+ /// <summary>
+ /// Determines whether the specified object is equal to the current object.
+ /// </summary>
+ /// <param name="layoutLength">The LayoutLength to compare with the current LayoutLength.</param>
+ /// <returns>true if equal LayoutLengths, else false.</returns>
+ public bool Equals(LayoutLengthEx layoutLength)
+ {
+ return (Math.Abs(_value - layoutLength._value ) <= float.Epsilon);
+ }
+
+ /// <summary>
+ /// A hash code for the current object.
+ /// </summary>
+ public override int GetHashCode()
+ {
+ return _value.GetHashCode();
+ }
+
+ /// <summary>
+ /// The addition operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value.</param>
+ /// <returns>The LayoutLength containing the result of the addition.</returns>
+ public static LayoutLengthEx operator +(LayoutLengthEx arg1, LayoutLengthEx arg2)
+ {
+ return new LayoutLengthEx( arg1._value + arg2._value );
+ }
+
+ /// <summary>
+ /// The addition operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value.</param>
+ /// <returns>The LayoutLength containing the result of the addition.</returns>
+ public static LayoutLengthEx operator +(LayoutLengthEx arg1, int arg2)
+ {
+ return new LayoutLengthEx(arg1._value + (float)arg2);
+ }
+
+ /// <summary>
+ /// The subtraction operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value.</param>
+ /// <returns>The LayoutLength containing the result of the subtraction.</returns>
+ public static LayoutLengthEx operator -(LayoutLengthEx arg1, LayoutLengthEx arg2)
+ {
+ return new LayoutLengthEx(arg1._value - arg2._value);
+ }
+
+ /// <summary>
+ /// The subtraction operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value.</param>
+ /// <returns>The LayoutLength containing the result of the subtraction.</returns>
+ public static LayoutLengthEx operator -(LayoutLengthEx arg1, int arg2)
+ {
+ return new LayoutLengthEx(arg1._value - (float)arg2);
+ }
+
+ /// <summary>
+ /// The multiplication operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value.</param>
+ /// <returns>The LayoutLength containing the result of the multiplication.</returns>
+ public static LayoutLengthEx operator *(LayoutLengthEx arg1, LayoutLengthEx arg2)
+ {
+ return new LayoutLengthEx(arg1._value * arg2._value);
+ }
+
+ /// <summary>
+ /// Th multiplication operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The int value to scale the LayoutLength.</param>
+ /// <returns>The LayoutLength containing the result of the scaling.</returns>
+ public static LayoutLengthEx operator *(LayoutLengthEx arg1, int arg2)
+ {
+ return new LayoutLengthEx(arg1._value * arg2);
+ }
+
+ /// <summary>
+ /// The division operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The second value.</param>
+ /// <returns>The LayoutLength containing the result of the division.</returns>
+ public static LayoutLengthEx operator /(LayoutLengthEx arg1, LayoutLengthEx arg2)
+ {
+ return new LayoutLengthEx(arg1._value / arg2._value);
+ }
+
+ /// <summary>
+ /// Th division operator.
+ /// </summary>
+ /// <param name="arg1">The first value.</param>
+ /// <param name="arg2">The int value to scale the vector by.</param>
+ /// <returns>The LayoutLength containing the result of the scaling.</returns>
+ public static LayoutLengthEx operator /(LayoutLengthEx arg1, int arg2)
+ {
+ return new LayoutLengthEx(arg1._value / (float)arg2);
+ }
+ }
+}
--- /dev/null
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+using System;
+using System.ComponentModel;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI
+{
+ /// <summary>
+ /// [Draft] This class represents a layout size (width and height), non mutable.
+ /// </summary>
+ internal class LayoutSizeEx : IEquatable<LayoutSizeEx>
+ {
+ /// <summary>
+ /// [Draft] Constructor from width and height
+ /// </summary>
+ /// <param name="width">Int to initialize with.</param>
+ /// <param name="height">Int to initialize with.</param>
+ public LayoutSizeEx(int width, int height)
+ {
+ Width = width;
+ Height = height;
+ }
+
+ /// <summary>
+ /// Computes a hash code for this LayoutSize for use in hash based collections.
+ /// </summary>
+ /// <returns>A non unique hash code .</returns>
+ public override int GetHashCode()
+ {
+ return Width ^ Height;
+ }
+
+ /// <summary>
+ /// Determines whether the specified object is equal to the current object.
+ /// </summary>
+ /// <param name="obj">The object to compare with the current object.</param>
+ /// <returns>true if equal LayoutSize, else false.</returns>
+ public override bool Equals(object obj)
+ {
+ LayoutSizeEx layoutSizeEx = (LayoutSizeEx)obj;
+ if (layoutSizeEx != null)
+ {
+ return this.Equals(layoutSizeEx);
+ }
+ return false;
+ }
+
+ /// <summary>
+ /// Whether the values of two LayoutSize objects are equals
+ /// </summary>
+ /// <param name="obj">Object to be compared against.</param>
+ /// <returns>true if obj is equal to this LayoutSize.</returns>
+ public bool Equals(LayoutSizeEx obj)
+ {
+ LayoutSizeEx layoutSize = obj;
+ return ((layoutSize.Width == Width) && (layoutSize.Height == Height));
+ }
+
+ /// <summary>
+ /// [Draft] Get the width value of this layout
+ /// </summary>
+ public int Width{ get; private set; }
+
+ /// <summary>
+ /// [Draft] Get the height value of this layout
+ /// </summary>
+ public int Height{ get; private set; }
+
+ }
+}
--- /dev/null
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+using System.ComponentModel;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI
+{
+ /// <summary>
+ /// [Draft] A MeasureSpecification is used during the Measure pass by a LayoutGroup to inform it's children how to be measured.
+ /// For instance, it may measure a child with an exact width and an unspecified height in order to determine height for width.
+ /// </summary>
+ internal class MeasureSpecification
+ {
+ /// <summary>
+ /// MeasureSpecification Size value.
+ /// </summary>
+ public LayoutLengthEx Size;
+
+ /// <summary>
+ /// MeasureSpecification Mode.
+ /// </summary>
+ public MeasureSpecification.ModeType Mode;
+
+ /// <summary>
+ /// Constructor taking size and mode type.
+ /// </summary>
+ /// <param name="size">size value.</param>
+ /// <param name="mode">mode vaue.</param>
+ public MeasureSpecification(LayoutLengthEx size, MeasureSpecification.ModeType mode)
+ {
+ Size = size;
+ Mode = mode;
+ }
+
+ public enum ModeType
+ {
+ /// <summary>
+ /// This is used by a parent to determine the desired dimension of a child layout.
+ /// </summary>
+ Unspecified,
+ /// <summary>
+ /// This is used by a parent to impose an exact size on the child.
+ /// The child must use this size, and guarantee that all of its descendants will fit within this size.
+ /// </summary>
+ Exactly,
+ /// <summary>
+ /// This is used by the parent to impose a maximum size on the child.
+ /// The child must guarantee that it and all of it's descendants will fit within this size.
+ /// </summary>
+ AtMost
+ }
+ }
+}
--- /dev/null
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+using System.ComponentModel;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI
+{
+ /// <summary>
+ /// [Draft] Class that encodes a measurement and a measure state, which is set if the measured size is too small.
+ /// </summary>
+ internal class MeasuredSizeEx
+ {
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ /// <param name="measuredSize">size parameter</param>
+ /// <param name="state">State</param>
+ public MeasuredSizeEx(LayoutLengthEx measuredSize, MeasuredSizeEx.StateType state)
+ {
+ Size = measuredSize;
+ State = state;
+ }
+
+ /// <summary>
+ /// Creates a MeasuredSize from a LayoutLength
+ /// </summary>
+ /// <param name="measuredSize">LayoutLength to create </param>
+ public static implicit operator MeasuredSizeEx(LayoutLengthEx measuredSize)
+ {
+ return new MeasuredSizeEx(measuredSize, StateType.MeasuredSizeOK);
+ }
+
+ /// <summary>
+ /// LayoutLength size property
+ /// </summary>
+ public LayoutLengthEx Size{ get; set;}
+
+ /// <summary>
+ /// Measured state for this size.
+ /// </summary>
+ public StateType State{ get; set; }
+
+ /// <summary>
+ /// Measured states for a Size value.
+ /// </summary>
+ public enum StateType
+ {
+ /// <summary>
+ /// The measured size is good
+ /// </summary>
+ MeasuredSizeOK,
+ /// <summary>
+ /// The measured size is too small
+ /// </summary>
+ MeasuredSizeTooSmall
+ }
+ }
+}
[global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_DragAndDropDetector_DroppedSignal")]
public static extern global::System.IntPtr DragAndDropDetector_DroppedSignal(global::System.Runtime.InteropServices.HandleRef jarg1);
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_new_ApplicationExtensions__SWIG_0")]
- public static extern global::System.IntPtr new_ApplicationExtensions__SWIG_0();
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_new_ApplicationExtensions__SWIG_1")]
- public static extern global::System.IntPtr new_ApplicationExtensions__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_delete_ApplicationExtensions")]
- public static extern void delete_ApplicationExtensions(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_ApplicationExtensions_Init")]
- public static extern void ApplicationExtensions_Init(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_ApplicationExtensions_Start")]
- public static extern void ApplicationExtensions_Start(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_ApplicationExtensions_Terminate")]
- public static extern void ApplicationExtensions_Terminate(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_ApplicationExtensions_Pause")]
- public static extern void ApplicationExtensions_Pause(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_ApplicationExtensions_Resume")]
- public static extern void ApplicationExtensions_Resume(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
- [global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_ApplicationExtensions_LanguageChange")]
- public static extern void ApplicationExtensions_LanguageChange(global::System.Runtime.InteropServices.HandleRef jarg1);
-
-
[global::System.Runtime.InteropServices.DllImport("libdali-csharp-binder.so", EntryPoint = "CSharp_Dali_Window_New__SWIG_0")]
public static extern global::System.IntPtr Window_New__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, bool jarg3);
resources = resources ?? new Dictionary<string, object>();
if (ve.XamlResources != null)
{
- foreach (KeyValuePair<string, object> res in ve.XamlResources.MergedResources)
- if (!resources.ContainsKey(res.Key))
- resources.Add(res.Key, res.Value);
- else if (res.Key.StartsWith(Style.StyleClassPrefix, StringComparison.Ordinal))
- {
- var mergedClassStyles = new List<Style>(resources[res.Key] as List<Style>);
- mergedClassStyles.AddRange(res.Value as List<Style>);
- resources[res.Key] = mergedClassStyles;
- }
- }
+ foreach (KeyValuePair<string, object> res in ve.XamlResources.MergedResources)
+ if (!resources.ContainsKey(res.Key))
+ resources.Add(res.Key, res.Value);
+ else if (res.Key.StartsWith(Style.StyleClassPrefix, StringComparison.Ordinal))
+ {
+ var mergedClassStyles = new List<Style>(resources[res.Key] as List<Style>);
+ mergedClassStyles.AddRange(res.Value as List<Style>);
+ resources[res.Key] = mergedClassStyles;
+ }
+ }
}
var app = element as Application;
if (app != null && app.SystemResources != null)
defaultValueCreator: (bindable) =>
{
var imageView = (ImageView)bindable;
- Tizen.NUI.Object.GetProperty(imageView.swigCPtr, ImageView.Property.IMAGE).Get(out imageView._url);
+ if(imageView._imageType == ImageType.Normal)
+ {
+ Tizen.NUI.Object.GetProperty(imageView.swigCPtr, ImageView.Property.IMAGE).Get(out imageView._url);
+ }
return imageView._url;
});
private string _url;
private bool? _orientationCorrection;
private PropertyMap _image;
+ private ImageType _imageType;
/// <summary>
/// Creates an initialized ImageView.
private void UpdateImage()
{
- if (_url != null)
+ if (_url != null && _url != "")
{
if (_border != null)
{ // for nine-patch image
if (_synchronousLoading != null) { _nPatchMap.Add(NpatchImageVisualProperty.SynchronousLoading, new PropertyValue((bool)_synchronousLoading)); }
if (_orientationCorrection != null) { _nPatchMap.Add(ImageVisualProperty.OrientationCorrection, new PropertyValue((bool)_orientationCorrection)); }
SetProperty(ImageView.Property.IMAGE, new PropertyValue(_nPatchMap));
+ _imageType = ImageType.Npatch;
}
else if (_synchronousLoading != null || _orientationCorrection != null)
{ // for normal image, with synchronous loading property
if (_synchronousLoading != null) { imageMap.Add(ImageVisualProperty.SynchronousLoading, new PropertyValue((bool)_synchronousLoading)); }
if (_orientationCorrection != null) { imageMap.Add(ImageVisualProperty.OrientationCorrection, new PropertyValue((bool)_orientationCorrection)); }
SetProperty(ImageView.Property.IMAGE, new PropertyValue(imageMap));
+
+ _imageType = ImageType.Specific;
}
else
{ // just for normal image
SetProperty(ImageView.Property.IMAGE, new PropertyValue(_url));
+ _imageType = ImageType.Normal;
}
}
else
map.Merge(_image);
}
SetProperty(ImageView.Property.IMAGE, new PropertyValue(map));
+ _imageType = ImageType.Normal;
}
}
internal static readonly int ACTION_PAUSE = NDalicManualPINVOKE.ImageView_IMAGE_VISUAL_ACTION_PAUSE_get();
internal static readonly int ACTION_STOP = NDalicManualPINVOKE.ImageView_IMAGE_VISUAL_ACTION_STOP_get();
}
+
+ private enum ImageType
+ {
+ /// <summary>
+ /// For Normal Image.
+ /// </summary>
+ Normal = 0,
+
+ /// <summary>
+ /// For normal image, with synchronous loading and orientation correction property
+ /// </summary>
+ Specific = 1,
+
+ /// <summary>
+ /// For nine-patch image
+ /// </summary>
+ Npatch = 2,
+ }
}
}
/// Constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- public VisualView() : base(typeof(VisualView).FullName, CustomViewBehaviour.ViewBehaviourDefault)
+ public VisualView() : base(typeof(VisualView).FullName, CustomViewBehaviour.ViewBehaviourDefault | CustomViewBehaviour.RequiresTouchEventsSupport)
{
}
using System;
using Tizen.NUI.Binding;
+using System.ComponentModel;
namespace Tizen.NUI
{
/// <summary>
/// The Color class.
/// </summary>
- [TypeConverter(typeof(ColorTypeConverter))]
+ [Tizen.NUI.Binding.TypeConverter(typeof(ColorTypeConverter))]
public class Color : global::System.IDisposable
{
//A Flag to check who called Dispose(). (By User or DisposeQueue)
private bool isDisposeQueued = false;
+ private readonly bool hashDummy;
+
/// <summary>
/// Default constructor
/// </summary>
{
swigCMemOwn = cMemoryOwn;
swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
+ hashDummy = false;
}
/// <summary>
return ret;
}
+ private static bool EqualsColorValue(float f1, float f2)
+ {
+ float EPS = (float)Math.Abs(f1 * .00001);
+ if(Math.Abs(f1 - f2) <= EPS)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+
+ private static bool EqualsColor(Color c1, Color c2)
+ {
+ return EqualsColorValue(c1.R, c2.R) && EqualsColorValue(c1.G, c2.G)
+ && EqualsColorValue(c1.B, c2.B) && EqualsColorValue(c1.A, c2.A);
+ }
+
+ /// <summary>
+ /// Determines whether the specified object is equal to the current object.
+ /// </summary>
+ /// <param name="obj">The object to compare with the current object.</param>
+ /// <returns>true if the specified object is equal to the current object; otherwise, false.</returns>
+ /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override bool Equals(System.Object obj)
+ {
+ Color color = obj as Color;
+ bool equal = false;
+ if (color == null)
+ {
+ return equal;
+ }
+
+ if (EqualsColor(this, color))
+ {
+ equal = true;
+ }
+ return equal;
+ }
+
+ /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override int GetHashCode()
+ {
+ return hashDummy.GetHashCode();
+ }
+
private float ValueOfIndex(uint index)
{
float ret = NDalicPINVOKE.Vector4_ValueOfIndex__SWIG_0(swigCPtr, index);
}
/// <summary>
- /// Dispose.
+ /// You can override it to clean-up your own resources.
/// </summary>
/// <param name="type">Dispose Type</param>
/// <since_tizen> 3 </since_tizen>
- /// Please DO NOT use! This will be deprecated!
+ /// Please do not use! This will be deprecated!
/// Dispose() method in Singletone classes (ex: FocusManager, StyleManager, VisualFactory, ImfManager, TtsPlayer, Window) is not required.
[EditorBrowsable(EditorBrowsableState.Never)]
protected override void Dispose(DisposeTypes type)
}
//Release your own unmanaged resources here.
- //You should not access any managed member here except static instance.
+ //You should not access any managed member here except static instance
//because the execution order of Finalizes is non-deterministic.
if (_keyboardTypeChangedEventCallback != null)
public class ImfEventData : global::System.IDisposable
{
/// <summary>
- /// swigCMemOwn
+ /// The state if it owns memory
/// </summary>
/// <since_tizen> 3 </since_tizen>
protected bool swigCMemOwn;
/// <summary>
- /// A Flat to check if it is already disposed.
+ /// A flag to check if it is already disposed.
/// </summary>
/// <since_tizen> 3 </since_tizen>
protected bool disposed = false;
private global::System.Runtime.InteropServices.HandleRef swigCPtr;
- //A Flag to check who called Dispose(). (By User or DisposeQueue)
+ //A flag to check who called Dispose(). (By User or DisposeQueue)
private bool isDisposeQueued = false;
/// <summary>
}
/// <summary>
- /// Dispose.
+ /// Releases the resource.
/// </summary>
/// <since_tizen> 3 </since_tizen>
~ImfEventData()
}
/// <summary>
- /// Dispose.
+ /// You can override it to clean-up your own resources.
/// </summary>
/// <since_tizen> 3 </since_tizen>
protected virtual void Dispose(DisposeTypes type)
public class ImfCallbackData : global::System.IDisposable
{
/// <summary>
- /// swigCMemOwn
+ /// The state if it owns memory
/// </summary>
/// <since_tizen> 3 </since_tizen>
protected bool swigCMemOwn;
/// <summary>
- /// A Flat to check if it is already disposed.
+ /// A flag to check if it is already disposed.
/// </summary>
/// <since_tizen> 3 </since_tizen>
protected bool disposed = false;
private global::System.Runtime.InteropServices.HandleRef swigCPtr;
- //A Flag to check who called Dispose(). (By User or DisposeQueue)
+ //A flag to check who called Dispose(). (By User or DisposeQueue)
private bool isDisposeQueued = false;
/// <summary>
}
/// <summary>
- /// Dispose.
+ /// Releases the resource.
/// </summary>
/// <since_tizen> 3 </since_tizen>
~ImfCallbackData()
}
/// <summary>
- /// Dispose.
+ /// You can override it to clean-up your own resources.
/// </summary>
/// <since_tizen> 3 </since_tizen>
protected virtual void Dispose(DisposeTypes type)
public class ActivatedEventArgs : EventArgs
{
/// <summary>
- /// ImfManager
+ /// The instance of ImfManager
/// </summary>
/// <since_tizen> 4 </since_tizen>
public ImfManager ImfManager
public class EventReceivedEventArgs : EventArgs
{
/// <summary>
- /// ImfManager
+ /// The instance of ImfManager
/// </summary>
/// <since_tizen> 4 </since_tizen>
public ImfManager ImfManager
}
/// <summary>
- /// ImfEventData
+ /// The event data of IMF
/// </summary>
/// <since_tizen> 4 </since_tizen>
public ImfEventData ImfEventData
public class ResizedEventArgs : EventArgs
{
/// <summary>
- /// resized.
+ /// The state if the IMF resized.
/// </summary>
/// <since_tizen> 4 </since_tizen>
public int Resized
}
/// <summary>
- /// Dispose
+ /// You can override it to clean-up your own resources.
/// </summary>
/// <param name="type">Dispose Type</param>
/// <since_tizen> 5 </since_tizen>
- /// Please DO NOT use! This will be deprecated!
+ /// Please do not use! This will be deprecated!
/// Dispose() method in Singletone classes (ex: FocusManager, StyleManager, VisualFactory, InputMethodContext, TtsPlayer, Window) is not required.
[EditorBrowsable(EditorBrowsableState.Never)]
protected override void Dispose(DisposeTypes type)
}
//Release your own unmanaged resources here.
- //You should not access any managed member here except static instance.
- //Because the execution order of Finalizes is non-deterministic.
+ //You should not access any managed member here except static instance
+ //because the execution order of Finalizes is non-deterministic.
if (_keyboardTypeChangedEventCallback != null)
{
public class EventData : global::System.IDisposable
{
/// <summary>
- /// swigCMemOwn
+ /// The state if it owns memory
/// </summary>
/// <since_tizen> 5 </since_tizen>
protected bool swigCMemOwn;
}
/// <summary>
- /// Dispose.
+ /// Releases the resource.
/// </summary>
/// <since_tizen> 5 </since_tizen>
~EventData()
}
/// <summary>
- /// Dispose.
+ /// You can override it to clean-up your own resources.
/// </summary>
/// <since_tizen> 5 </since_tizen>
protected virtual void Dispose(DisposeTypes type)
public class CallbackData : global::System.IDisposable
{
/// <summary>
- /// swigCMemOwn
+ /// The state if it owns memory
/// </summary>
/// <since_tizen> 5 </since_tizen>
protected bool swigCMemOwn;
private global::System.Runtime.InteropServices.HandleRef swigCPtr;
- //A Flag to check who called Dispose(). (By User or DisposeQueue)
+ //A flag to check who called Dispose(). (By User or DisposeQueue)
private bool isDisposeQueued = false;
/// <summary>
}
/// <summary>
- /// Dispose.
+ /// Releases the resource.
/// </summary>
/// <since_tizen> 5 </since_tizen>
~CallbackData()
}
/// <summary>
- /// If the cursor position needs to be updated.
+ /// The state if the cursor position needs to be updated.
/// </summary>
/// <since_tizen> 5 </since_tizen>
public bool Update
}
/// <summary>
- /// Dispose.
+ /// You can override it to clean-up your own resources.
/// </summary>
/// <since_tizen> 5 </since_tizen>
protected virtual void Dispose(DisposeTypes type)
public class ActivatedEventArgs : EventArgs
{
/// <summary>
- /// InputMethodContext
+ /// The instance of InputMethodContext
/// </summary>
/// <since_tizen> 5 </since_tizen>
public InputMethodContext InputMethodContext
public class EventReceivedEventArgs : EventArgs
{
/// <summary>
- /// InputMethodContext
+ /// The instance of InputMethodContext
/// </summary>
/// <since_tizen> 5 </since_tizen>
public InputMethodContext InputMethodContext
}
/// <summary>
- /// EventData.
+ /// The event data of IMF
/// </summary>
/// <since_tizen> 5 </since_tizen>
public EventData EventData
public class ResizedEventArgs : EventArgs
{
/// <summary>
- /// resized.
+ /// The state if the IMF resized.
/// </summary>
/// <since_tizen> 5 </since_tizen>
public int Resized
/// <summary>
/// Will be replaced by separate ClippingMode enum. Draw the actor and its children into the stencil buffer.
/// </summary>
- /// <remarks>
- /// Deprecated.(API Level 6) Use ClippingModeType instead.
- /// </remarks>
- [Obsolete("Please do not use this DrawModeType.Stencil(Deprecated). Please use ClippingModeType instead.")]
Stencil = 3
}
/// </summary>
DisableSizeNegotiation = 1 << 0,
/// <summary>
+ /// True if OnTouch() callback is required.
+ /// </summary>
+ /// <since_tizen> 6 </since_tizen>
+ /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ RequiresTouchEventsSupport = 1 << 1,
+ /// <summary>
+ /// True if OnHover() callback is required.
+ /// </summary>
+ /// <since_tizen> 6 </since_tizen>
+ /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ RequiresHoverEventsSupport = 1 << 2,
+ /// <summary>
+ /// True if OnWheel() callback is required.
+ /// </summary>
+ /// <since_tizen> 6 </since_tizen>
+ /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ RequiresWheelEventsSupport = 1 << 3,
+ /// <summary>
/// Use to provide key navigation support.
/// </summary>
RequiresKeyboardNavigationSupport = 1 << 5,
private bool OnStageWheel(IntPtr rootLayer, IntPtr wheelEvent)
{
if (wheelEvent == global::System.IntPtr.Zero)
- {
+ {
NUILog.Error("wheelEvent should not be null!");
return true;
}