﻿#ifndef Q7B_global_h
#define Q7B_global_h

#include "Q7BRuntime.h"

class Q7B_workaround_eventloop : public QObject
{
Q_OBJECT
public:
public slots:
void q7b_workaround_eventloop_();
};

class Global;
extern Global *Q7B_Global_Class(Q7B o);
extern Q7B Q7B_Global_Object();
extern Global *q7b_Global_Object;
extern Q7B q7b_Global_Object_Q7B;
extern bool q7b_Global_Object_Finalized;
extern bool q7b_Global_Object_Init;


extern QMap<QString, Q7B>q7b_ui;


extern Q7B Q7B_MainWindow_Object();

extern Q7B Q7B_CMath_Object();

extern Q7B Q7B_Preferences_Object();

extern Q7B Q7B_Application_Object();

extern Q7B Q7B_Debug_Object();

extern Q7B Q7B_OS_Object();

extern Q7B Q7B_File_Object();

extern Q7B Q7B_Desktop_Object();

extern Q7B Q7B_Dir_Object();

extern Q7B Q7B_OpenFileDialog_Object();

extern Q7B Q7B_SaveFileDialog_Object();

extern Q7B Q7B_ColorDialog_Object();

extern Q7B Q7B_FontDialog_Object();

extern Q7B Q7B_ProgressDialog_Object();

extern Q7B Q7B_InputDialog_Object();

extern Q7B Q7B_Database_Object();

extern Q7B Q7B_Table_Object();

extern Q7B Q7B_Records_Object();

extern Q7B Q7B_Query_Object();

extern Q7B Q7B_MessageBox_Object();

extern Q7B Q7B_ToolBar_Object();

extern Q7B Q7B_Sounds_Object();

extern Q7B Q7B_Pixmaps_Object();

extern Q7B Q7B_Colors_Object();

extern Q7B Q7B_Fonts_Object();

extern Q7B Q7B_StatusBar_Object();
class Global : public QObject
{
Q_OBJECT
public:
Global(QObject *parent = 0);
~Global();
void Init();



public:
static void SingleTonInit(Global*me)
{
q7b_Global_Object = me;
q7b_Global_Object_Q7B = me->q7b_this;
q7b_Global_Object_Init = true;
me->Init();
}

static Q7B SingleTonObject()
{
SingleTonObjectPointer();
return q7b_Global_Object_Q7B;
}


static Global* SingleTonObjectPointer()
{
if (q7b_Global_Object_Finalized) return 0;
if (q7b_Global_Object == 0){
q7b_Global_Object_Init = true;
q7b_Global_Object = new Global(q7b_Global_Object_Q7B);
q7b_Global_Object->Init();
}
return q7b_Global_Object;
}


static Global* ClassPointer(Q7B o)
{
return (Global*) o->ref;
}


public:
Global(Q7B _q7b_this);
private:
Q7B q7b_this;

};
class Global;
extern Q7B Q7B_ID(Global* o);
extern Q7B Q7B__GLOBAL(Q7B o);
class MainWindow;
extern Q7B Q7B_ID(MainWindow* o);
extern Q7B Q7B__MAINWINDOW(Q7B o);

#endif
