File: Baseresource.hh

package info (click to toggle)
bbmail 0.8.3-7
  • links: PTS
  • area: main
  • in suites: stretch
  • size: 784 kB
  • sloc: cpp: 7,307; sh: 3,506; makefile: 83; perl: 26
file content (74 lines) | stat: -rw-r--r-- 2,053 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
// Baseresource.hh for bbtools - tools to display resources in X11.
//
//  Copyright (c) 1998-2000 John Kennis, jkennis@chello.nl
//
//  This program is free software; you can redistribute it and/or modify
//  it under the terms of the GNU General Public License as published by
//  the Free Software Foundation; either version 2 of the License, or
//  (at your option) any later version.
//
//  This program is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//  GNU General Public License for more details.
//
//  You should have received a copy of the GNU General Public License
//  along with this program; if not, write to the Free Software
//  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// (See the included file COPYING / GPL-2.0)
//

#ifndef __BASERESOURCE_HH
#define __BASERESOURCE_HH

#define BBTOOLS 1
#define BLACKBOX 2

class ToolWindow;
class BImageControl;

struct STYLE
{
	char *conf_filename;
	char *style_filename;
};

class BaseResource
{

public:
	BaseResource(ToolWindow *);
	virtual ~BaseResource(void);

	void CopyColor(BColor *,BColor *);
	void CopyTexture(BTexture ,BTexture *);
	void Reload(void);
	STYLE style;

protected:
	void Load(void);
	void readDatabaseColor(char *, char *, BColor *);
	void readDatabaseTexture(char*,char*,char *,char *, char *,
	                         char *,char *,BTexture *);
	void readDatabaseTexture(char *, char *,BTexture *);
	void readColor(char *,char *, char *,char *,char *,BColor *);
	void readTexture(char *,char *, char *,char *,char *,char *,char *,
	                 BTexture *);


	ToolWindow *bbtool;
	XrmDatabase resource_db;
	XrmDatabase db;

	virtual void LoadBBToolResource(void) = 0;
private:
	bool ReadResourceFromFilename(char *, char *);
	void ReadBBtoolResource(void);
	void ReadDefaultResource(void);
	void ReadBlackboxResource(void);
	BImageControl *image_control;
	int ResourceType;
};

#endif /* __BASERESOURCE_HH */