00001 00002 #ifndef __CAIRO_DOCK_DIALOGS__ 00003 #define __CAIRO_DOCK_DIALOGS__ 00004 00005 #include "cairo-dock-struct.h" 00006 00012 #define CAIRO_DOCK_IS_DIALOG(pContainer) (pContainer != NULL && pContainer->iType == CAIRO_DOCK_TYPE_DIALOG) 00013 00018 #define CAIRO_DOCK_DIALOG(pContainer) ((CairoDockDialog *)pContainer) 00019 00020 void cairo_dock_load_dialog_buttons (CairoDockContainer *pContainer, gchar *cButtonOkImage, gchar *cButtonCancelImage); 00021 00027 gboolean cairo_dock_dialog_reference (CairoDockDialog *pDialog); 00033 gboolean cairo_dock_dialog_unreference (CairoDockDialog *pDialog); 00034 00039 void cairo_dock_isolate_dialog (CairoDockDialog *pDialog); 00044 void cairo_dock_free_dialog (CairoDockDialog *pDialog); 00050 gboolean cairo_dock_remove_dialog_if_any (Icon *icon); 00054 void cairo_dock_remove_orphelans (void); 00055 00056 00057 GtkWidget *cairo_dock_build_common_interactive_widget_for_dialog (const gchar *cInitialAnswer, double fValueForHScale, double fMaxValueForHScale); 00058 00059 CairoDockDialog *cairo_dock_build_dialog (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, gchar *cImageFilePath, GtkWidget *pInteractiveWidget, GtkButtonsType iButtonsType, CairoDockActionOnAnswerFunc pActionFunc, gpointer data, GFreeFunc pFreeDataFunc); 00060 00061 00062 void cairo_dock_dialog_calculate_aimed_point (Icon *pIcon, CairoDockContainer *pContainer, int *iX, int *iY, gboolean *bRight, CairoDockTypeHorizontality *bIsHorizontal, gboolean *bDirectionUp); 00063 00064 void cairo_dock_dialog_find_optimal_placement (CairoDockDialog *pDialog); 00065 00066 void cairo_dock_place_dialog (CairoDockDialog *pDialog, CairoDockContainer *pContainer); 00070 void cairo_dock_replace_all_dialogs (void); 00071 00072 00087 CairoDockDialog *cairo_dock_show_dialog_full (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, double fTimeLength, gchar *cIconPath, GtkButtonsType iButtonsType, GtkWidget *pInteractiveWidget, CairoDockActionOnAnswerFunc pActionFunc, gpointer data, GFreeFunc pFreeDataFunc); 00088 00099 CairoDockDialog *cairo_dock_show_temporary_dialog_with_icon (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, double fTimeLength, gchar *cIconPath, ...); 00109 CairoDockDialog *cairo_dock_show_temporary_dialog (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, double fTimeLength, ...); 00119 CairoDockDialog *cairo_dock_show_temporary_dialog_with_default_icon (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, double fTimeLength, ...); 00120 00132 CairoDockDialog *cairo_dock_show_dialog_with_question (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, gchar *cIconPath, CairoDockActionOnAnswerFunc pActionFunc, gpointer data, GFreeFunc pFreeDataFunc); 00145 CairoDockDialog *cairo_dock_show_dialog_with_entry (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, gchar *cIconPath, const gchar *cTextForEntry, CairoDockActionOnAnswerFunc pActionFunc, gpointer data, GFreeFunc pFreeDataFunc); 00158 CairoDockDialog *cairo_dock_show_dialog_with_value (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, gchar *cIconPath, double fValue, CairoDockActionOnAnswerFunc pActionFunc, gpointer data, GFreeFunc pFreeDataFunc); 00159 00171 int cairo_dock_show_dialog_and_wait (const gchar *cText, Icon *pIcon, CairoDockContainer *pContainer, double fTimeLength, gchar *cIconPath, GtkButtonsType iButtonsType, GtkWidget *pInteractiveWidget); 00180 gchar *cairo_dock_show_demand_and_wait (const gchar *cMessage, Icon *pIcon, CairoDockContainer *pContainer, const gchar *cInitialAnswer); 00190 double cairo_dock_show_value_and_wait (const gchar *cMessage, Icon *pIcon, CairoDockContainer *pContainer, double fInitialValue, double fMaxValue); 00198 int cairo_dock_ask_question_and_wait (const gchar *cQuestion, Icon *pIcon, CairoDockContainer *pContainer); 00199 00200 00206 gboolean cairo_dock_icon_has_dialog (Icon *pIcon); 00211 Icon *cairo_dock_get_dialogless_icon (void); 00212 00213 00220 CairoDockDialog * cairo_dock_show_general_message (const gchar *cMessage, double fTimeLength); 00226 int cairo_dock_ask_general_question_and_wait (const gchar *cQuestion); 00227 00228 00233 void cairo_dock_hide_dialog (CairoDockDialog *pDialog); 00238 void cairo_dock_unhide_dialog (CairoDockDialog *pDialog); 00239 00244 GtkWidget *cairo_dock_steal_widget_from_its_container (GtkWidget *pWidget); 00245 00246 #endif