File Manager / inc / view /

window.h

  1. /*
  2. * Copyright 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
  3. *
  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
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  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. */
  17.  
  18. #ifndef __WINDOW_OBJ_H__
  19. #define __WINDOW_OBJ_H__
  20.  
  21. #include <Evas.h>
  22.  
  23. typedef struct _window_obj {
  24. Evas_Object *win; /**< Window object */
  25. Evas_Object *bg; /**< Background object */
  26. Evas_Object *conform; /**< Conform object */
  27. Evas_Object *layout; /**< Main layout object */
  28. } window_obj;
  29.  
  30. /**
  31. * @brief Creates window
  32. * @return Window object on success or NULL.
  33. */
  34. window_obj *win_create();
  35.  
  36. /**
  37. * @brief Lower a window object.
  38. * @param[in] obj A window object
  39. */
  40. void win_lower(window_obj *obj);
  41.  
  42. /**
  43. * @brief Free window object
  44. * @param[in] obj A window object
  45. */
  46. void win_destroy(window_obj *obj);
  47.  
  48. /**
  49. * @brief Setes a layout object to window
  50. * @param[in] obj Window object.
  51. * @param[in] layout Layout object.
  52. */
  53. void win_set_layout(window_obj *obj, Evas_Object *layout);
  54.  
  55. /**
  56. * @brief Returns host layout object
  57. * @param[in] obj Window object.
  58. * @return Layout object on success or NULL.
  59. */
  60. Evas_Object *win_get_host_layout(const window_obj *obj);
  61.  
  62. #endif // __WINDOW_OBJ_H__