gui_utils.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:3k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.  * The contents of this file are subject to the Mozilla Public
  3.  * License Version 1.1 (the "License"); you may not use this file
  4.  * except in compliance with the License. You may obtain a copy of
  5.  * the License at http://www.mozilla.org/MPL/
  6.  * 
  7.  * Software distributed under the License is distributed on an "AS
  8.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  9.  * implied. See the License for the specific language governing
  10.  * rights and limitations under the License.
  11.  * 
  12.  * The Original Code is MPEG4IP.
  13.  * 
  14.  * The Initial Developer of the Original Code is Cisco Systems Inc.
  15.  * Portions created by Cisco Systems Inc. are
  16.  * Copyright (C) Cisco Systems Inc. 2000, 2001.  All Rights Reserved.
  17.  * 
  18.  * Contributor(s): 
  19.  *              Bill May        wmay@cisco.com
  20.  */
  21. /*
  22.  * gui_utils.h - various utility programs gotten from the book or
  23.  * other gtk applications
  24.  */
  25. #ifndef __GUIUTILS_H__
  26. #define __GUIUTILS_H__
  27. #include <stdlib.h>
  28. GtkWidget *CreateWidgetFromXpm (GtkWidget *widget, gchar **xpm_data);
  29. GtkWidget *CreateMenuItem (GtkWidget *menu,
  30.    GtkAccelGroup *accel_group,
  31.    GtkTooltips *tooltips,
  32.                            char *szName, 
  33.                            char *szAccel,
  34.                            char *szTip, 
  35.                            GtkSignalFunc func,
  36.                            gpointer data);
  37. GtkWidget *CreateMenuCheck (GtkWidget *menu, 
  38.                             char *szName, 
  39.                             GtkSignalFunc func, 
  40.                             gpointer data);
  41. GtkWidget *CreateSubMenu (GtkWidget *menubar, char *szName);
  42. GtkWidget *CreateBarSubMenu (GtkWidget *menu, char *szName);
  43. GtkWidget *CreateMenuRadio (GtkWidget *menu, 
  44.                             char *szName, 
  45.                             GSList **group,
  46.                             GtkSignalFunc func, 
  47.                             gpointer data);
  48. GtkWidget *CreateOptionMenu(GtkWidget *old,
  49.     char **names,
  50.     size_t max,
  51.     size_t current_index,
  52.     GtkSignalFunc on_activate,
  53. GSList** menuItems = NULL);
  54. GtkWidget *CreateOptionMenu(GtkWidget *old,
  55. char* (*gather_func)(size_t index, void* pUserData),
  56. void* pUserData,
  57.     size_t max,
  58.     size_t current_index,
  59.     GtkSignalFunc on_activate,
  60. GSList** menuItems = NULL);
  61.   
  62. int GetNumberEntryValue(GtkWidget *entry, size_t *result);
  63.   
  64. void SetNumberEntryValue(GtkWidget *entry, size_t value);
  65.   
  66. GtkWidget *AddNumberEntryBoxWithLabel(GtkWidget *vbox,
  67.       const char *label_name,
  68.       size_t value,
  69.       size_t value_len);
  70.   
  71. GtkWidget *AddButtonToDialog(GtkWidget *dialog,
  72.      const char *name,
  73.      GtkSignalFunc on_click);
  74. GtkWidget *AddEntryBoxWithLabel(GtkWidget *vbox,
  75. const char *label_name,
  76. const char *initial_value,
  77. size_t value_len);
  78.   
  79. void FreeChild(GtkWidget *widget);
  80. void SetEntryValidator(GtkObject* object, 
  81. GtkSignalFunc changed_func, GtkSignalFunc leave_func);
  82. // from gui_showmsg.cpp
  83. GtkWidget* ShowMessage (
  84. const char *szTitle, 
  85. const char *szMessage,
  86. bool userDismiss = true);
  87. void CloseShowMessage(
  88. GtkWidget* parent, 
  89. gpointer widget);
  90. #define CreateMenuItemSeperator(menu) 
  91. CreateMenuItem(menu, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
  92. void YesOrNo (const char *szTitle,
  93.       const char *szMessage,
  94.       int yes_as_default,
  95.       GtkSignalFunc yesroutine,
  96.       GtkSignalFunc noroutine);
  97. #endif /* __GUIUTILS_H__ */