ewk_window_features.h 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /*
  2. Copyright (C) 2010 ProFUSION embedded systems
  3. Copyright (C) 2010 Samsung Electronics
  4. This library is free software; you can redistribute it and/or
  5. modify it under the terms of the GNU Library General Public
  6. License as published by the Free Software Foundation; either
  7. version 2 of the License, or (at your option) any later version.
  8. This library is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  11. Library General Public License for more details.
  12. You should have received a copy of the GNU Library General Public License
  13. along with this library; see the file COPYING.LIB. If not, write to
  14. the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  15. Boston, MA 02110-1301, USA.
  16. */
  17. /**
  18. * @file ewk_window_features.h
  19. * @brief Access to the features of window.
  20. */
  21. #ifndef ewk_window_features_h
  22. #define ewk_window_features_h
  23. #include <Eina.h>
  24. #ifdef __cplusplus
  25. extern "C" {
  26. #endif
  27. /** Creates a type name for _Ewk_Window_Features. */
  28. typedef struct _Ewk_Window_Features Ewk_Window_Features;
  29. /**
  30. * Decreases the referece count of an Ewk_Window_Features, possibly freeing it.
  31. *
  32. * When the reference count of the object reaches 0, it is freed.
  33. *
  34. * @param window_features the object to decrease reference count
  35. */
  36. EAPI void ewk_window_features_unref(Ewk_Window_Features *window_features);
  37. /**
  38. * Increases the reference count of an Ewk_Window_Features.
  39. *
  40. * @param window_features the object to increase reference count
  41. */
  42. EAPI void ewk_window_features_ref(Ewk_Window_Features *window_features);
  43. /**
  44. * Gets boolean properties of an Ewk_Window_Features.
  45. *
  46. * Properties are returned in the respective pointers. Passing @c NULL to any of
  47. * these pointers will cause that property to not be returned.
  48. *
  49. * @param window_features the object to get boolean properties
  50. * @param toolbar_visible the pointer to store if toolbar is visible
  51. * @param statusbar_visible the pointer to store if statusbar is visible
  52. * @param scrollbars_visible the pointer to store if scrollbars is visible
  53. * @param menubar_visible the pointer to store if menubar is visible
  54. * @param locationbar_visible the pointer to store if locationbar is visible
  55. * @param fullscreen the pointer to store if fullscreen is enabled
  56. *
  57. * @see ewk_window_features_int_property_get
  58. */
  59. EAPI void ewk_window_features_bool_property_get(const Ewk_Window_Features *window_features, Eina_Bool *toolbar_visible, Eina_Bool *statusbar_visible, Eina_Bool *scrollbars_visible, Eina_Bool *menubar_visible, Eina_Bool *locationbar_visible, Eina_Bool *fullscreen);
  60. /**
  61. * Gets int properties of an Ewk_Window_Features.
  62. *
  63. * Properties are returned in the respective pointers. Passing @c NULL to any of
  64. * these pointers will cause that property to not be returned.
  65. *
  66. * Make sure to check if the value returned is less than 0 before using it, since in
  67. * that case it means that property was not set in window_features object.
  68. *
  69. * @param window_features the window's features
  70. * @param x the pointer to store x position
  71. * @param y the pointer to store y position
  72. * @param w the pointer to store width
  73. * @param h the pointer to store height
  74. *
  75. * @see ewk_window_features_bool_property_get
  76. */
  77. EAPI void ewk_window_features_int_property_get(const Ewk_Window_Features *window_features, int *x, int *y, int *w, int *h);
  78. #ifdef __cplusplus
  79. }
  80. #endif
  81. #endif // ewk_window_features_h