~ubuntu-branches/ubuntu/oneiric/cairo-dock/oneiric-201106091216

« back to all changes in this revision

Viewing changes to src/gldit/cairo-dock-data-renderer-manager.h

  • Committer: Bazaar Package Importer
  • Author(s): Matthieu Baerts (matttbe)
  • Date: 2011-03-17 14:08:48 UTC
  • mfrom: (1.1.14 upstream)
  • Revision ID: james.westby@ubuntu.com-20110317140848-b8efysl4ynhjm87k
Tags: 2.3.0~1-0ubuntu1
* New Upstream Version (LP: #723994)
* Upstream short ChangeLog:
 - Updated translations
 - Updated the integration of the new versions of kwin and compiz
 - Updated default theme
 - Fixed a few bugs
 - Updated the man
* debian/control:
 - Added suggests apps for cairo-dock-core (needed by the default theme)
 - Updated the description (from launchpad.net/cairo-dock)
 - Added cairo-dock-plug-ins as a new suggestion for cairo-dock-core
* debian/patches:
 - Updated the default theme to use default apps of Ubuntu Natty 
* Switch to dpkg-source 3.0 (quilt) format
* Removed the desktop-file-category patch (sync with debian packages)
* debian/rules:
 - Added a CMake flag to disable the gtk grip
 - No longer used simple-patchsys
* Updated the debian/watch

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
* This file is a part of the Cairo-Dock project
 
3
*
 
4
* Copyright : (C) see the 'copyright' file.
 
5
* E-mail    : see the 'copyright' file.
 
6
*
 
7
* This program is free software; you can redistribute it and/or
 
8
* modify it under the terms of the GNU General Public License
 
9
* as published by the Free Software Foundation; either version 3
 
10
* of the License, or (at your option) any later version.
 
11
*
 
12
* This program is distributed in the hope that it will be useful,
 
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
 
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
15
* GNU General Public License for more details.
 
16
* You should have received a copy of the GNU General Public License
 
17
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
18
*/
 
19
 
 
20
 
 
21
#ifndef __CAIRO_DOCK_DATA_RENDERER_MANAGER__
 
22
#define  __CAIRO_DOCK_DATA_RENDERER_MANAGER__
 
23
 
 
24
#include <glib.h>
 
25
 
 
26
#include "cairo-dock-struct.h"
 
27
#include "cairo-dock-manager.h"
 
28
#include "cairo-dock-data-renderer.h"
 
29
G_BEGIN_DECLS
 
30
 
 
31
/**
 
32
*@file cairo-dock-data-renderer-manager.h This class manages the list of available Data Renderers and their global ressources.
 
33
*/
 
34
 
 
35
typedef struct _CairoDataRenderersManager CairoDataRenderersManager;
 
36
 
 
37
#ifndef _MANAGER_DEF_
 
38
extern CairoDataRenderersManager myDataRenderersMgr;
 
39
#endif
 
40
 
 
41
 
 
42
struct _CairoDockDataRendererRecord {
 
43
        CairoDataRendererInterface interface;
 
44
        gulong iStructSize;
 
45
        const gchar *cThemeDirName;
 
46
        const gchar *cDistantThemeDirName;
 
47
        const gchar *cDefaultTheme;
 
48
        };
 
49
 
 
50
// params
 
51
 
 
52
// manager
 
53
struct _CairoDataRenderersManager {
 
54
        GldiManager mgr;
 
55
        
 
56
        CairoDockGLFont* (*get_default_data_renderer_font) (void);
 
57
        
 
58
        void (*register_data_renderer) (const gchar *cRendererName, CairoDockDataRendererRecord *pRecord);
 
59
        void (*remove_data_renderer) (const gchar *cRendererName);
 
60
        CairoDataRenderer* (*new_data_renderer) (const gchar *cRendererName);
 
61
        
 
62
        GHashTable* (*list_available_themes_for_data_renderer) (const gchar *cRendererName);
 
63
        gchar* (*get_data_renderer_theme_path) (const gchar *cRendererName, const gchar *cThemeName, CairoDockPackageType iType);
 
64
        gchar* (*get_package_path_for_data_renderer) (const gchar *cRendererName, const gchar *cAppletConfFilePath, GKeyFile *pKeyFile, const gchar *cGroupName, const gchar *cKeyName, gboolean *bFlushConfFileNeeded, const gchar *cDefaultThemeName);
 
65
        } ;
 
66
 
 
67
// signals
 
68
typedef enum {
 
69
        NB_NOTIFICATIONS_DATA_RENDERERS
 
70
        } CairoDataRendererNotifications;
 
71
 
 
72
 
 
73
/** Get the default GLX font for Data Renderer. It can render strings of ASCII characters fastly. Don't destroy it.
 
74
*@return the default GLX font*/
 
75
CairoDockGLFont *cairo_dock_get_default_data_renderer_font (void);
 
76
 
 
77
void cairo_dock_unload_default_data_renderer_font (void);  // merge with unload
 
78
 
 
79
 
 
80
CairoDockDataRendererRecord *cairo_dock_get_data_renderer_record (const gchar *cRendererName);  // peu utile.
 
81
 
 
82
void cairo_dock_register_data_renderer (const gchar *cRendererName, CairoDockDataRendererRecord *pRecord);
 
83
 
 
84
void cairo_dock_remove_data_renderer (const gchar *cRendererName);
 
85
 
 
86
 
 
87
CairoDataRenderer *cairo_dock_new_data_renderer (const gchar *cRendererName);
 
88
 
 
89
 
 
90
GHashTable *cairo_dock_list_available_themes_for_data_renderer (const gchar *cRendererName);
 
91
 
 
92
gchar *cairo_dock_get_data_renderer_theme_path (const gchar *cRendererName, const gchar *cThemeName, CairoDockPackageType iType);
 
93
 
 
94
gchar *cairo_dock_get_package_path_for_data_renderer (const gchar *cRendererName, const gchar *cAppletConfFilePath, GKeyFile *pKeyFile, const gchar *cGroupName, const gchar *cKeyName, gboolean *bFlushConfFileNeeded, const gchar *cDefaultThemeName);
 
95
 
 
96
 
 
97
void gldi_register_data_renderers_manager (void);
 
98
 
 
99
G_END_DECLS
 
100
#endif