Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#2426 Le 12/11/2007, à 18:02

Mav

Re : nouveau cairo-dock

@Fab : j'ai modifié le wiki en ajoutant une capture d'écran pour le moment. C'est une perso donc si quelqu'un en a une avec la vue en carroussel (ou parabolique mais pas tout de suite smile) à  me proposer, je l'ajouterai aussi
Envoyez moi ca par MP

EDIT : Fab, j'ai commencé les petites modifs de structure au boulot donc j'avance pas à  pas vu qu'au boulot suis sous Window$

Dernière modification par Mav (Le 12/11/2007, à 18:15)


Cairo-Dock : www.cairo-dock.org
OSM : www.openstreetmap.org

Hors ligne

#2427 Le 12/11/2007, à 18:15

Lord Northam

Re : nouveau cairo-dock

I'm Alive ! lol

Fabounet a écrit :

par contre pour les reflets je me suis mal exprimé, ça s'active pas, y'a juste un utilisateur qui avait essayé de le faire y'a 1 ou 2 semaines, et je sais pas s'il a réussi ou pas, il semblait être sur la bonne voie mais plus de nouvelles depuis, voila smile

Si si, ça fonctionne, mais j'y connais rien en C et encore moins en Lib Cairo. Donc j'ai surtout bricolé ce que j'avais déjà  tenté de faire il y a 5 ou 6 mois...

Donc j'ai bricolé le cairo-dock.c de la version s'installant dans /opt. Comme tu as tout ré-écris et ensuite partitionné le code en plusieurs fichiers, il m'est difficile de tout retrouver.

J'ai voulu utiliser cairo_mask() pour filtrer les icà´nes, mais après plusieurs tests je découvre qu'il filtre l'intégralité de la Dock...

Pour ce qui fonctionne (d'après les anciennes sources donc...)

static gint
get_dock_offset_y ()
{
	return g_iWindowHeight - g_aIcons[0].fHeight-24 - g_iDockLineWidth;
}

J'ai ajouté le -24, pour agrandir la hauteur du Dock (Il faut bien laisser de la place pour voir le reflet.)

	for (icon = 0; icon < SVGS; icon++)
	{
		cairo_save (pCairoContext);
		cairo_translate (pCairoContext, g_aIcons[icon].fX, g_aIcons[icon].fY-24); // Ajout du -24, qui permet de remonter les icà´nes pour laisser encore une fois la place libre pour le reflet. 

		/* draw the icon */

		cairo_save (pCairoContext);
		if (g_aIcons[icon].pIconBuffer)
		{
			cairo_scale (pCairoContext, g_aIcons[icon].fScale / 2.0, g_aIcons[icon].fScale / 2.0);
			cairo_set_source_surface (pCairoContext, g_aIcons[icon].pIconBuffer, 0.0, 0.0);
			cairo_paint (pCairoContext);

			// Jusqu'ici c'est le code non changé qui "trace" les icà´nes
			// Voici le "tracage" du Reflet !

			// On inverse le sens de l'icà´ne, pour donner "l'effet" miroir, c'est réalisé avec la valeur négative, plus efficace que l'ancienne rotation.
			cairo_scale (pCairoContext, 1.0, -1.0);

			// On déplace l'icà´ne du Reflet, sous l'icà´ne normale
			// Les valeurs sont celles pour l'ancienne Dock. Elles doivent dépendre de la taille des icà´nes... Donc il y a très certainement une variable à  placer ici... (Dont je ne connais pas le nom)
			cairo_translate (pCairoContext, -2.0, -194.0 );

			// L'icà´ne est prête a "tracer", alors on sélectionne la source. C'est la même que précédemment, on n'utilise aucun tampon, aucune copie. ça permet de ne pas trop bouffer de mémoire...
			cairo_set_source_surface (pCairoContext, g_aIcons[icon].pIconBuffer, 2.0, 2.0);

			// On "trace" l'icà´ne avec une opacité de 40% (il faudra mettre une variable pour que les utilisateurs puissent choisir l'opacité désirée
			cairo_paint_with_alpha (pCairoContext, 0.4f);
		}
		else
		{
			cairo_scale (pCairoContext, g_aIcons[icon].fScale, g_aIcons[icon].fScale);
			rsvg_handle_render_cairo (g_aIcons[icon].pHandle, pCairoContext);
		}
		cairo_restore (pCairoContext);

à‰videmment, plusieurs choses à  noter :
- C'est prévu pour une Dock placée en bas... Il faudra très certainement dynamiser le cairo_scale() et cairo_translate() pour permettre un reflet adapté dans n'importe quelle position.
- Il faudrait filtrer l'icà´ne avec un pattern du genre :

		filtreReflet = cairo_pattern_create_linear (0.5, 0.1, 0.5, 0.3);
		cairo_pattern_add_color_stop_rgba (filtreReflet, 0, 0, 0, 0, 0.1);
		cairo_pattern_add_color_stop_rgba (filtreReflet, 1, 0, 0, 0, 0.0);

- Dans le cairo_translate(), il faut inclure une valeur venant de l'animation du Bouncer ! Sinon le reflet reste collé à  l'icà´ne quand elle saute...

Cela donne donc actuellement ceci :
cdre4.png

Hors ligne

#2428 Le 12/11/2007, à 18:18

Mav

Re : nouveau cairo-dock

@Lors Notham : putain que ca pète !  big_smile:D

Dernière modification par Mav (Le 12/11/2007, à 18:23)


Cairo-Dock : www.cairo-dock.org
OSM : www.openstreetmap.org

Hors ligne

#2429 Le 12/11/2007, à 18:35

nochka85

Re : nouveau cairo-dock

@Lord Notham : EXCELLENT !! Beau boulot ! big_smile
@Tshirtman & Fabounet : Pour le changement de bureau : Si c'était juste un simple icone représentant le bureau avec son numéro qui apparaissait (C'est surtout pour contrà´ler sur quel bureau on se trouve). Et lorsque l'on clique dessus, un sous dock apparait avec un même icone répété pour chaque bureau et juste le numéro en surimpression qui change... On clique sur celui que l'on souhaite pour changer de bureau .... Bref, comme l'applet BlingSwitcher de AWN  (vidéos à  voir ici pour le principe et l'icone , ou encore ici pour l'utilisation dans Compiz) : Pourquoi réinventer ce qui marche du tonnerre ? Le gros avantage : c'est tout simple à  utiliser et pour la programation, il n'y a plus les X cases à  gérer wink. D'autant que si quelqu'un à  10 bureaux de configuré, cela risque de lui faire de toutes petites cases, non ? lol   

Ensuite, si on sait faire un icone miniaturisé de l'écran .... mais là  c'est vraiment une autre histoire! tongue:P

Dernière modification par nochka85 (Le 12/11/2007, à 18:58)


Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop

Hors ligne

#2430 Le 12/11/2007, à 18:56

boolat

Re : nouveau cairo-dock

@Lord Northam wowww trop sexo big_smile

@Fabounet a toi de jouer pour la version 1.5.0 smile n'oublie pas pour les icônes smile

@boolat: oui c'est ce que je pensait, l'icone firefox est récupéré dans l'application, tu ne peut pas la changer (actuellement en tout cas) il faudrait voir avec fabounet si c'est possible de surcharger cette icone d'une façon ou d'une autre pour n'importe quelle application (plutot que de récupérer celle donnée par l'application).

merci


Acer Aspire 9305 AWSMI - Ubuntu 9.04

Hors ligne

#2431 Le 12/11/2007, à 19:23

tshirtman

Hors ligne

#2432 Le 12/11/2007, à 21:22

frinuc

Re : nouveau cairo-dock

Fabounet a écrit :

@frinuc : as-tu essayé de désactiver tous les plug-ins du fichier de conf comme te l'as suggéré Tshirtman ? autre option : désinstalle le paquet des plug-ins seulement. Si ça ne plante plus, au moins on aura un peu mieux localisé le problème.
pour le copier-coller, utilise le clique du milieu wink

Je n'ai pas de fichier conf, je l'avais déjà  dit, du coup je peux pas désactiver les plugins, quand je les désinstalle j'ai ce message -->

21:10:33 fm@frinuc-desktop:~ 11$ cairo-dock
Attention : Erreur à  l'ouverture du répertoire « /usr/share/cairo-dock/plug-in » : Aucun fichier ou répertoire de ce type
  no module will be available

Erreur de segmentation (core dumped)

en installant le cvs j'ai simplement un core dumped et avec ddd j'ai ça désolé pour la longueur sad

#include <math.h>
#include <string.h>
#include <stdlib.h>
    
#include <glib.h>
#include <glib/gstdio.h>
#include <gtk/gtk.h>
    
#ifdef HAVE_GLITZ
#include <gdk/gdkx.h>
#include <glitz-glx.h>
#include <cairo-glitz.h>
#endif
    
#include "cairo-dock-icons.h"
#include "cairo-dock-applications-manager.h"
#include "cairo-dock-callbacks.h"
#include "cairo-dock-modules.h"
#include "cairo-dock-dock-factory.h"
#include "cairo-dock-menu.h"
#include "cairo-dock-themes-manager.h"
#include "cairo-dock-dialogs.h"
#include "cairo-dock-notifications.h"
#include "cairo-dock-renderer-manager.h"
    
CairoDock *g_pMainDock;  // pointeur sur le dock principal.
GHashTable *g_hDocksTable = NULL;  // table des docks existant.
int g_iWmHint;  // hint pour la fenetre du dock principal.
gchar *g_cLanguage = NULL;  // langue courante.
gboolean g_bReserveSpace;
gchar *g_cMainDockDefaultRendererName = NULL;
gchar *g_cSubDockDefaultRendererName = NULL;
    
gboolean g_bReverseVisibleImage;  // retrouner l'image de la zone de rappel quand le dock est en haut.
gint g_iScreenWidth[2];  // dimensions de l'ecran.
gint g_iScreenHeight[2];
int g_iMaxAuthorizedWidth;  // largeur maximale autorisee pour la fenetre (0 pour la taille de l'ecran).
int g_iScrollAmount;  // de combien de pixels fait defiler un coup de molette.
gboolean g_bResetScrollOnLeave;  // revenir a un defilement nul lorsqu'on quitte la fenetre.
double g_fScrollAcceleration;  // acceleration du defilement quand il revient a la normale.
    
gchar *g_cCurrentThemePath = NULL;  // le chemin vers le repertoire du theme courant.
gchar *g_cCurrentLaunchersPath = NULL;  // le chemin vers le repertoire des lanceurs/icones du theme courant.
gchar *g_cConfFile = NULL;  // le chemin du fichier de conf.
gchar **g_cDefaultIconDirectory = NULL;  // les repertoires ou on va chercher les icones avant d'aller chercher dans le theme d'icones.
GtkIconTheme *g_pIconTheme = NULL;  // le theme d'icone choisi.
gchar *g_cCairoDockDataDir = NULL;  // le repertoire ou on va chercher les .desktop.
    
gboolean g_bAutoHide;
double g_fAmplitude;  // amplitude de la siunsoide.
int g_iSinusoidWidth;  // largeur de la sinusoide en pixels. On va de 0 a pi en la parcourant, en etant a pi/2 au niveau du curseur; en dehors de cet intervalle, la sinusoide est plate.
int g_iNbAnimationRounds;
gint g_iDockLineWidth;  // thickness of dock-bg outline.
gint g_iDockRadius;  // radius of dock-bg corners.
gint g_iFrameMargin;  // marge entre le cadre et les icones.
gboolean g_bRoundedBottomCorner;  // vrai ssi les coins du bas sont arrondis.
double g_fLineColor[4];  // la couleur du cadre.
gint g_iStringLineWidth;  // epaisseur de la ficelle.
double g_fStringColor[4];  // la couleur de la ficelle.
    
cairo_surface_t *g_pVisibleZoneSurface = NULL;  // surface de la zone de rappel.
double g_fVisibleZoneAlpha;  // transparence de la zone de rappel.
int g_iNbStripes;  // le nombre de rayures a dessiner en fond dans chaque motif elementaire.
double g_fStripesSpeedFactor;  // =1 les rayures suivent le curseur, <1 les rayures vont d'autant moins vite.
double g_fStripesWidth;  // leur epaisseur relative.
double g_fStripesColorBright[4];  // couleur claire du fond ou des rayures.
double g_fStripesColorDark[4];  // couleur foncee du fond ou des rayures.
double g_fStripesAngle;  // angle par rapport a la verticale des decorations.
gchar *g_cBackgroundImageFile = NULL;  // nom du fichier image a mettre en fond.
double g_fBackgroundImageWidth = 0, g_fBackgroundImageHeight = 0;  // sa taille reelle.
gboolean g_bBackgroundImageRepeat; // repeter l'image du fond comme un motif.
double g_fBackgroundImageAlpha;  // transparence de l'image de fond.
cairo_surface_t *g_pBackgroundSurface[2] = {NULL, NULL};  // surface associee a l'image du fond, de la taille de l'image du fond.
cairo_surface_t *g_pBackgroundSurfaceFull[2] = {NULL, NULL};  // surface associee aux decorations, de 2 fois la taille de la fenetre.
gboolean g_bDecorationsFollowMouse;  // dis si les decorations sont asservies au curseur, ou si le delta de deplacement ne depend que de la direction de celui-ci.
    
int g_iIconGap;  // ecart en pixels entre les icones.
int g_tMinIconAuthorizedSize[CAIRO_DOCK_NB_TYPES];  // les tailles min et max pour chaque type d'icone.
int g_tMaxIconAuthorizedSize[CAIRO_DOCK_NB_TYPES];
int g_tAnimationType[CAIRO_DOCK_NB_TYPES];  // le type de l'animation pour chaque type d'icone.
int g_tNbAnimationRounds[CAIRO_DOCK_NB_TYPES];  // le nombre de rebonds/rotation/etc lors d'un clique gauche.
int g_tIconTypeOrder[CAIRO_DOCK_NB_TYPES];  // l'ordre de chaque type dans le dock.
int g_tNbIterInOneRound[CAIRO_DOCK_NB_ANIMATIONS] = {17, 20, 20, 12, 20, 20, 0};  // 2n+3, 4n, 2n, 2n, 4n, 4n.
    
int g_iVisibleZoneWidth = 0;  // dimensions de la zone ou on place le curseur pour faire apparaitre le dock.
int g_iVisibleZoneHeight = 0;
    
gboolean g_bDirectionUp;  // la direction dans laquelle les icones grossissent. Vers le haut ou vers le bas.
gboolean g_bSameHorizontality;  // dit si les sous-docks ont la meme horizontalite que les docks racines.
double g_fSubDockSizeRatio;  // ratio de la taille des icones des sous-docks par rapport a celles du dock principal.
gboolean g_bAnimateSubDock;
int g_iLeaveSubDockDelay;
int g_iShowSubDockDelay;
    
int g_iLabelSize;  // taille de la police des etiquettes.
gchar *g_cLabelPolice = NULL;  // police de caracteres des etiquettes.
int g_iLabelWeight;  // epaisseur des traits.
int g_iLabelStyle;  // italique ou droit.
gboolean g_bLabelForPointedIconOnly;  // n'afficher les etiquettes que pour l'icone pointee.
double g_fLabelAlphaThreshold;  // seuil de visibilité de etiquettes.
gboolean g_bTextAlwaysHorizontal;  // true <=> etiquettes horizontales meme pour les docks verticaux.
    
double g_fUnfoldAcceleration = 0;
int g_iGrowUpInterval;
int g_iShrinkDownInterval;
double g_fMoveUpSpeed = 0.5;
double g_fMoveDownSpeed = 0.33;
double g_fRefreshInterval = .04;
    
gboolean g_bShowAppli = FALSE;  // au debut on ne montre pas les applis, il faut que cairo-dock le sache.
gboolean g_bUniquePid;  // une seule icone par PID.
gboolean g_bGroupAppliByClass = TRUE;  // une seule icone par classe, les autres dans un container.
int g_iAppliMaxNameLength;  // longueur max de la chaine de caractere du nom des applis.
gboolean g_bMinimizeOnClick;  // minimiser l'appli lorsqu'on clique sur son icone si elle est deja active.
gboolean g_bDemandsAttentionWithDialog;  // attirer l'attention avec une bulle de dialogue.
gboolean g_bDemandsAttentionWithAnimation;  // attirer l'attention avec une animation.
gboolean g_bAnimateOnActiveWindow;  // jouer une breve animation de l'icone lorsque la fenetre correspondante devient active.
    
gchar *g_cSeparatorImage = NULL;
gboolean g_bRevolveSeparator;  // faire pivoter l'image des separateurs.
    
gboolean g_bKeepAbove = TRUE;
gboolean g_bSkipPager = TRUE;
gboolean g_bSkipTaskbar = TRUE;
gboolean g_bSticky = TRUE;
    
gboolean g_bUseGlitz = FALSE;
gboolean g_bVerbose = FALSE;
    
    
static gboolean random_dialog (gpointer user_data)
{
        g_return_val_if_fail (g_pMainDock != NULL && g_pMainDock->icons != NULL, TRUE);
        
        int num_icone = g_random_int_range (0, g_list_length (g_pMainDock->icons));
        
        Icon *icon = g_list_nth_data (g_pMainDock->icons, num_icone);
        if (CAIRO_DOCK_IS_SEPARATOR (icon))
                return random_dialog (user_data);
        cairo_dock_show_temporary_dialog (icon->acName, icon, g_pMainDock, 7000);
        return TRUE;
}
    
int
main (int argc, char** argv)
{
        gint i;
        for (i = 0; i < CAIRO_DOCK_NB_TYPES; i ++)
                g_tIconTypeOrder[i] = i;
        
        
        gtk_init (&argc, &argv);
        
        
        //\___________________ On recupere quelques options.
        g_iWmHint = GDK_WINDOW_TYPE_HINT_DOCK;
        gboolean bDialogTest = FALSE;
        for (i = 0; i < argc; i++)
        {
                if (strcmp (argv[i], "--glitz") == 0)
                {
#ifdef HAVE_GLITZ
                        g_bUseGlitz = TRUE;
#else
                        g_print ("Attention : Cairo-Dock was not compiled with glitz\n");
                        g_bUseGlitz = FALSE;
#endif
                }
                else if (strcmp (argv[i], "--no-glitz") == 0)
                {
                        g_bUseGlitz = FALSE;
                }
                else if (strcmp (argv[i], "--no-keep-above") == 0)
                        g_bKeepAbove = FALSE;
                else if (strcmp (argv[i], "--no-skip-pager") == 0)
                        g_bSkipPager = FALSE;
                else if (strcmp (argv[i], "--no-skip-taskbar") == 0)
                        g_bSkipTaskbar = FALSE;
                else if (strcmp (argv[i], "--no-sticky") == 0)
                        g_bSticky = FALSE;
                else if (strcmp (argv[i], "--toolbar-hint") == 0)
                        g_iWmHint = GDK_WINDOW_TYPE_HINT_TOOLBAR;
                else if (strcmp (argv[i], "--normal-hint") == 0)
                        g_iWmHint = GDK_WINDOW_TYPE_HINT_NORMAL;
                else if (strcmp (argv[i], "--dock-hint") == 0)  // le dock restera devant quoiqu'il arrive, mais ne recuperera plus les touches clavier.
                        g_print ("Attention : the '--dock-hint' option is deprecated since v1.3.7\n  It is now the default behaviour.");
                else if (strcmp (argv[i], "--dialog") == 0)
                        bDialogTest = TRUE;
                else if (strcmp (argv[i], "--version") == 0)
                {
                        g_print ("v%s\n", CAIRO_DOCK_VERSION);
                        return 0;
                }
                else if (strcmp (argv[i], "--verbose") == 0)
                {
#ifdef CAIRO_DOCK_VERBOSE
                        g_bVerbose = TRUE;
#else
                        g_print ("Attention : Cairo-Dock was not compiled with verbose\n");
                        g_bVerbose = FALSE;
#endif
                }
                else if (argv[i][0] == '-')
                {
                        gboolean help = (strcmp (argv[i], "--help") == 0);
                        fprintf (help ? stdout : stderr,
                                 "Usage:\n%s\n  [--glitz] (use hardware acceleration (needs a glitz-enabled libcairo))\n  [--no-keep-above] (don't keep the dock above other windows)\n  [--no-skip-pager] (show the dock in the pager)\n  [--no-skip-taskbar] (show the dock in taskbar)\n  [--no-sticky] (don't show the dock on all desktops)\n  [--normal-hint] (force the window manager to consider cairo-dock as a normal appli instead of a dock)\n  [--toolbar-hint] (force the window manager to consider cairo-dock as a toolbar instead of a dock)\n  [--help] (print this help and quit)\n",
                                 argv[0]);
                        return help ? 0 : 1;
                }
        }
        
        //\___________________ On initialise la table des docks..
        g_hDocksTable = g_hash_table_new_full (g_str_hash,
                g_str_equal,
                g_free,
                NULL);
        
        //\___________________ On initialise le gestionnaire des applications ouvertes.
        cairo_dock_initialize_application_manager ();
        
        //\___________________ On initialise le gestionnaire de modules et on pre-charge les modules existant.
        cairo_dock_initialize_module_manager (CAIRO_DOCK_MODULES_DIR);
        
        //\___________________ On initialise le gestionnaire de vues.
        cairo_dock_initialize_renderer_manager ();
        
        
        //\___________________ On teste l'existence du repertoire des donnees .cairo-dock.
        g_cCairoDockDataDir = g_strdup_printf ("%s/%s", getenv("HOME"), CAIRO_DOCK_DATA_DIR);
        if (! g_file_test (g_cCairoDockDataDir, G_FILE_TEST_IS_DIR))
        {
                if (g_mkdir (g_cCairoDockDataDir, 7*8*8+7*8+5) != 0)
                        g_print ("Attention : couldn't create directory %s\n", g_cCairoDockDataDir);
        }
        gchar *cThemesDir = g_strdup_printf ("%s/%s", g_cCairoDockDataDir, CAIRO_DOCK_THEMES_DIR);
        if (! g_file_test (cThemesDir, G_FILE_TEST_IS_DIR))
        {
                if (g_mkdir (cThemesDir, 7*8*8+7*8+5) != 0)
                        g_print ("Attention : couldn't create directory %s\n", cThemesDir);
        }
        g_free (cThemesDir);
        g_cCurrentThemePath = g_strdup_printf ("%s/%s", g_cCairoDockDataDir, CAIRO_DOCK_CURRENT_THEME_NAME);
        if (! g_file_test (g_cCurrentThemePath, G_FILE_TEST_IS_DIR))
        {
                if (g_mkdir (g_cCurrentThemePath, 7*8*8+7*8+5) != 0)
                        g_print ("Attention : couldn't create directory %s\n", g_cCurrentThemePath);
        }
        g_cCurrentLaunchersPath = g_strdup_printf ("%s/%s", g_cCurrentThemePath, CAIRO_DOCK_LAUNCHERS_DIR);
        if (! g_file_test (g_cCurrentLaunchersPath, G_FILE_TEST_IS_DIR))
        {
                if (g_mkdir (g_cCurrentLaunchersPath, 7*8*8+7*8+5) != 0)
                        g_print ("Attention : couldn't create directory %s\n", g_cCurrentLaunchersPath);
        }
        
        
        //\___________________ On enregistre nos notifications.
        cairo_dock_register_notification (CAIRO_DOCK_BUILD_MENU, (CairoDockNotificationFunc) cairo_dock_notification_build_menu, CAIRO_DOCK_RUN_AFTER);
        cairo_dock_register_notification (CAIRO_DOCK_DROP_DATA, (CairoDockNotificationFunc) cairo_dock_notification_drop_data, CAIRO_DOCK_RUN_AFTER);
        cairo_dock_register_notification (CAIRO_DOCK_CLICK_ICON, (CairoDockNotificationFunc) cairo_dock_notification_click_icon, CAIRO_DOCK_RUN_FIRST);
        cairo_dock_register_notification (CAIRO_DOCK_DOUBLE_CLICK_ICON, (CairoDockNotificationFunc) cairo_dock_notification_double_click_icon, CAIRO_DOCK_RUN_FIRST);
        cairo_dock_register_notification (CAIRO_DOCK_REMOVE_ICON, (CairoDockNotificationFunc) cairo_dock_notification_remove_icon, CAIRO_DOCK_RUN_FIRST);
        
        //\___________________ On charge le dernier theme ou on demande a l'utilisateur d'en choisir un.
        g_cConfFile = g_strdup_printf ("%s/%s", g_cCurrentThemePath, CAIRO_DOCK_CONF_FILE);
        if (! g_file_test (g_cConfFile, G_FILE_TEST_EXISTS))
        {
                int r;
                while ((r = cairo_dock_ask_initial_theme ()) == 0);
                if (r == -1)
                {
                        g_print ("mata ne !\n");
                        exit (0);
                }
        }
        
        cairo_dock_load_theme (g_cCurrentThemePath);
        
        if (bDialogTest)
                g_timeout_add (2000, (GSourceFunc) random_dialog, NULL);  // pour tests seulement.
        
        gtk_main ();
        
        rsvg_term ();
        
        return 0;
}

Encore pardon de la longueur, et fabounet j'irais pas jusqu'à  dire que je t'aime quelqu'un d'autres l'à  déjà  fait,mais tout de même t'es une star cool

La 1.3.8 une version qui me colle à  la peau

Dernière modification par frinuc (Le 12/11/2007, à 21:30)


- Dites, vous pourriez pas m’en débarasser ?
- Euh... il est con ! C’est un asile de fous, pas un asile de cons. Il faudrait construire des asiles de cons, mais vous imaginez un peu la taille des bâtiments...

Hors ligne

#2434 Le 12/11/2007, à 21:29

frinuc

Re : nouveau cairo-dock

Heuuuu, ah ouais pardon roll, déjà que j'avais oublié le clic du milieu, jsuis tout perturbé aussi...:)


- Dites, vous pourriez pas m’en débarasser ?
- Euh... il est con ! C’est un asile de fous, pas un asile de cons. Il faudrait construire des asiles de cons, mais vous imaginez un peu la taille des bâtiments...

Hors ligne

#2435 Le 12/11/2007, à 21:38

nochka85

Re : nouveau cairo-dock

salakos a écrit :

Désolé @ tous surtout à  Fabounet

belga_900s a écrit :
belga_900s a écrit :

????? hmm


Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop

Hors ligne

#2436 Le 12/11/2007, à 21:46

boolat

Re : nouveau cairo-dock

@nochka85,

belga_900s--> c'est le virus du forum lol


Acer Aspire 9305 AWSMI - Ubuntu 9.04

Hors ligne

#2437 Le 12/11/2007, à 21:57

lex_

Re : nouveau cairo-dock

@Mav : voilà  ma contribution pour le wiki..

157890322520071112214625.png

Je sais, c'est pas grand chose.. big_smile

Ps: Attention à  la taille des captures dans la doc, ça déborde un peu il me semble.. wink

+

Hors ligne

#2438 Le 12/11/2007, à 22:20

nochka85

Re : nouveau cairo-dock

boolat a écrit :

@nochka85,

belga_900s--> c'est le virus du forum lol

Ah la vache !!!!!! Je me suis fait infecter !!! lol:lol:

Dernière modification par nochka85 (Le 12/11/2007, à 22:25)


Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop

Hors ligne

#2439 Le 12/11/2007, à 22:25

Lndil

Re : nouveau cairo-dock

Allez Fabounet une autre erreur cette fois ci en utlisant the GIMP qui a donc fait sauter le dock:

cairo_dock_free_icon (carte2.jpeg)
 cette fenetre (54526632) de la pile n'est pas dans la liste
  cette fenetre est timide
file_manager_gnome_monitor_callback (4 sur 81860e8)
file_monitor_action_on_event (2 sur file:///home/seb/.recently-used.xbel.5K4Y1T)
_file_manager_get_file_info (file:///home/seb/.recently-used.xbel.5K4Y1T)
 -> cFullURI : file:///home/seb/.recently-used.xbel.5K4Y1T
Attention : couldn't get file info for 'file:///home/seb/.recently-used.xbel.5K4Y1T'
cairo_dock_free_icon ((null))

** (cairo-dock:7285): CRITICAL **: cairo_dock_insert_icon_in_dock: assertion `icon != NULL' failed
Erreur de segmentation (core dumped)
seb@seb-desktop:~$ 
(gimp:7693): Gimp-Tools-CRITICAL **: gimp_tool_set_active_modifier_state: assertion `display == tool->focus_display' failed

Je laisse mon terminal ouvert pour le moment si tu as une demande précise ...


Sur Ubuntu depuis 2006

Hors ligne

#2440 Le 12/11/2007, à 22:44

nochka85

Re : nouveau cairo-dock

@ Mav:  ma petite contribution pour le wiki (un sous dock pour open office):

sousdockzs0.png

Dernière modification par nochka85 (Le 12/11/2007, à 23:09)


Carte mère Asus P7P55D-E; Processeur Intel core i5 760; 8Go RAM PC3-10666; Geforce GTX 460 1024Mo sous Ubuntu 64bits 14.04
Eeepc 701 4G sous Linux Mint 10 Lxde
Site officiel de Glx-Dock/Cairo-Dock : http://www.glx-dock.org/
Dnd2share Unity - Partager vos images sur le forum par drag'n drop

Hors ligne

#2441 Le 12/11/2007, à 23:36

Mav

Re : nouveau cairo-dock

Impeccable j'intègre ca demain wink


Cairo-Dock : www.cairo-dock.org
OSM : www.openstreetmap.org

Hors ligne

#2442 Le 13/11/2007, à 02:23

Fabounet

Re : nouveau cairo-dock

@Mav : alt+impr marche pour moi, mais faut le faire en gardant un bouton de la souris cliqué sur le dock, sinon la capture le prend pas en pleine action (astuce de sioux ^_^)
y'a aussi quelques captures sur le ftp, et 2-3 vidéos youtube (je peux aussi les mettre sur le ftp).
déchaà®ne-toi, fais exploser le temps de chargement de la page, car les captures, saybien ! big_smile
@Lord Northam : ben dis-moi le résultat est déjà  bien, ça te dirait pas d'itégrer tes modifs au dock ? (j'essaie, j'essaie, tu as quand même l'air de connaà®tre la chose un minimum wink )
@nochka85 : ah oui pas mal l'idée d'utiliser un sous-dock.
<je raconte ma vie> par contre pour changer de bureau, rien de tel que molette-sur-le-cà´té-de-l'écran sous Beryl, ou encore ctrl+alt+flèche-droit-ou-gauche, ou encore alt+1,2,3,4 sous window maker, bref le WM intègre déjà  des mécanismes imbatables pour changer de bureau </je raconte ma vie>
@frinuc : ce serait pas un prolbème de droit par hasard ?
@Lndil : merci ! à  priori tu ne devrais plus le revoir celui-là  ! wink

j'ai fermé quelques entrées que j'avais créées ce WE sur le site, du coup j'ai mis en ligne une 1.4.1 juste pour corriger ces bugs, car ça me semblait important.
au passage j'ai rajouté un quick-hide à  la demande, pour les WM qui gèrent mal le fullscreen avec un dock. smile

Dernière modification par Fabounet (Le 13/11/2007, à 02:28)


"Quiconque est prêt à sacrifier sa liberté pour une sécurité provisoire ne mérite ni l'un ni l'autre." (Benjamin Franklin)
>> Changez le look de votre bureau, essayez Glx-Dock ! [http://glx-dock.org] <<

Hors ligne

#2443 Le 13/11/2007, à 03:41

gtraxx

Re : nouveau cairo-dock

heuu j'ai une question très simpliste,
je suis sous gutsy et je me demandais quel sont les pack .deb nécessaire pour obtenir cairo-dock.
je ne l'ai jamais utilisé et je suis tenté de l'essayé tongue
Sur https://developer.berlios.de/project/showfiles.php?group_id=8724 , j'ai vu ceci :

1.4.1    2007-11-13 00:00
    cairo-dock-plug-ins_v1.4.1_i686-32bits.deb    558092     0     i386    .deb
    cairo-dock-sources-20071113.tar.bz2    5380241     0     i386    .bz2
    cairo-dock_v1.4.1_i686-32bits.deb    1230912     0     i386    .deb
    md5sum.txt

Dans la doc, les paquets libcairo2 librsvg2-2 libglitz1 libglitz-glx1 sont ils toujours nécessaire (a mon avis oui)
j'aime bien me renseigner roll
merci d'avance et bonne continuation


Création site web  - Conception de site - intégrer jQuery dans php
Ubuntu 9.04 - http://doc.ubuntu-fr.org/zendstudio

Hors ligne

#2444 Le 13/11/2007, à 04:33

ppmt

Re : nouveau cairo-dock

Bon me revola apres une petite semaine de vacances smile

Je vois avec plaisirs que ca bouge toujours autant autour du dock....

J'ai donc la 1.4.1 et tous a l'air bon. J'ai essaye de reproduire l'histoire des
fenetre fantomes et je n'y arrive pas...

Pas encore eu de crash donc ca va.

J'ai lu que on va peut-etre bientot avoir un selecteur de desktop....Youhouu

Continuer....par contre il va falloir que je repasse voir le wiki en anglais moi. Il y a eu du changement depuis ma derniere update smile


le dock dont vous avez toujours rêvé  Cairo-Dock
irc://irc.freenode.net/#Cairo-Dock-fr

Hors ligne

#2445 Le 13/11/2007, à 04:38

loloemr

Re : nouveau cairo-dock

Bonsoir à  tous,

Félicitations Fabounet et les autres qui ont contribué à  ce dock:)

Je l'ai retesté avec plaisir et ai pu mesurer le travail accompli durant ces quelques mois. wink cool

Quelqu'un l'a suggéré pour les dépots universe dans la prochaine version ? J'avoue que je n'ai pas tout lu ...:P


L'open source est garant de notre indépendance technologique, permet de créer des emplois locaux et véhiculent deux idées fondamentales : la transparence de l'information et la supériorité de la collaboration sur la concurrence ... GNU/Linux c'est bon mangez-en !!

Hors ligne

#2446 Le 13/11/2007, à 07:07

Lndil

Re : nouveau cairo-dock

Euh qq chose de neuf la !

seb@seb-desktop:~$ sudo apt-get install
[sudo] password for seb:
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Vous pouvez lancer « apt-get -f install » pour corriger ces problèmes.
Les paquets suivants contiennent des dépendances non satisfaites :
  cairo-dock-plug-ins: Dépend: libdbus-1-2 mais il n'est pas installable
E: Dépendances manquantes. Essayez d'utiliser l'option -f.
seb@seb-desktop:~$ sudo apt-get install -f
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Correction des dépendances... Fait
Les paquets suivants seront ENLEVà‰S :
  cairo-dock-plug-ins
0 mis à  jour, 0 nouvellement installés, 1 à  enlever et 0 non mis à  jour.
1 partiellement installés ou enlevés.
Il est nécessaire de prendre 0o dans les archives.
Après dépaquetage, 1049ko d'espace disque seront libérés.
Souhaitez-vous continuer [O/n] ?

Une idée !?


Sur Ubuntu depuis 2006

Hors ligne

#2447 Le 13/11/2007, à 07:52

Lndil

Re : nouveau cairo-dock

Allez j'ai du boulot pour toi Fabounet

J'ai remarqué en fait que pour installer les plugins il faut avoir libdbus-1-2... mais moi j suis deja a la 1-3 (et ne peut installer la 1-2!). Faudrait modifier quelque chose dans les "dépendances" je suppose.
J suis donc revenu a version 1.4.0 pour les plugins pour qui il n'ya pas de probleme de dépendances.

Sinon encore un rapport d'erreur

Amarok: [Loader] Starting amarokapp..
Amarok: [Loader] Don't run gdb, valgrind, etc. against this binary! Use amarokapp.
DCOPClient::attachInternal. Attach failed Could not open network socket
kbuildsycoca running...
file_manager_gnome_monitor_callback (1 sur 8575d88)
file_monitor_action_on_event (1 sur file:///home/seb/.DCOPserver_seb-desktop__0)
  .DCOPserver_seb-desktop__0 sera supprimee
cairo_dock_free_icon (.DCOPserver_seb-desktop__0)
file_manager_gnome_monitor_callback (4 sur 8575d88)
file_monitor_action_on_event (2 sur file:///home/seb/.DCOPserver_seb-desktop__0)
kdecore (KAction): WARNING: KAction::insertKAccel( kaccel = 0x8250a28 ): KAccel object already contains an action name "play_pause"
QLayout "unnamed" added to QVBox "unnamed", which already has a layout
kdecore (KAction): WARNING: KAction::insertKAccel( kaccel = 0x8250a28 ): KAccel object already contains an action name "play_pause"
QLayout: Adding KToolBar/mainToolBar (child of QVBox/unnamed) to layout for PlaylistWindow/PlaylistWindow
Erreur de segmentation (core dumped)
seb@seb-desktop:~$ QObject::connect: Incompatible sender/receiver arguments
        StarManager::ratingsColorsChanged() --> ContextBrowser::ratingOrScoreOrLabelsChanged(const QString&)
QPainter::begin: Cannot paint null pixmap

Dernière modification par Lndil (Le 13/11/2007, à 07:54)


Sur Ubuntu depuis 2006

Hors ligne

#2448 Le 13/11/2007, à 07:54

Mav

Re : nouveau cairo-dock

Essaye libdbus-1-3


Cairo-Dock : www.cairo-dock.org
OSM : www.openstreetmap.org

Hors ligne

#2449 Le 13/11/2007, à 08:05

Lndil

Re : nouveau cairo-dock

Si j'essaye l'install des plug-ins 1.4.1 il me dit qu'il manque libdbus-1-2 alors que la 1-3 est installé !


Sur Ubuntu depuis 2006

Hors ligne

#2450 Le 13/11/2007, à 08:12

TaZmaniak

Re : nouveau cairo-dock

Fabounet,

J'ai posté un bug de dépendance : https://developer.berlios.de/bugs/?func=detailbug&bug_id=12419&group_id=8724


Beau boulot en tout cas wink


@+
TaZ

Hors ligne