// resource.hh for bbsload - an tool to display new mail in X11.
//
// 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 __RESOURCE_HH
#define __RESOURCE_HH
#include "bbapm.hh"
#include "Baseresource.hh"
class BaseResource;
struct FRAME {
int width;
int height;
BTexture texture;
int bevelWidth;
XFontStruct *font;
};
struct POSITION {
int x;
int y;
int mask;
};
struct LABEL {
int width;
int width0, width1, width2, width3;
int height;
BTexture texture;
bool transparent;
XFontStruct *font;
BColor percentage_textColor;
BColor time_textColor;
BColor seperator_textColor;
};
struct LOADBAR {
int width;
BTexture active_texture;
BTexture inactive_texture;
int left_step_width;
int right_step_width;
double ratio;
int number_of_bars;
double max_time; // 100% obviously.
};
struct SHOW {
bool label;
bool percentage; // Display percentage loadbar
bool loading; // Display the loading indicator
int loadingTime; // At what interval the loadbar should be
// updated if the battery is loading
bool label_time; // Display the time left.
bool label_percentage; // Percentage shown in text
};
struct REPORT {
time_t check_delay;
};
class Resource : public BaseResource
{
public:
Resource(ToolWindow *);
~Resource(void);
struct FRAME frame;
struct LABEL label;
struct POSITION position;
struct LOADBAR loadbar;
struct SHOW show;
struct REPORT report;
protected:
virtual void LoadBBToolResource(void);
private:
void Frame(void);
void SizeAndPosition(void);
void CheckSettings(void);
void Label(void);
void Show(void);
void LoadBar(void);
void Clean(void);
};
#endif /* __RESOURCE_HH */
syntax highlighted by Code2HTML, v. 0.9.1