<commit_before>#include <Arika/Arika.h>
#include <Arika_internal/Arika_internal.h>
#include <QApplication>
#include <QMainWindow>
#include <QPushButton>

static QApplication* s_application;

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

struct ARWidget
{
	QWidget* widget;
};

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

template<class T> ARWidget* createWidget()
{
	T* widget = new T;

	ARWidget* arWidget = new ARWidget;
	arWidget->widget = widget; 

	return arWidget; 
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ARWidget* windowCreateMain()
{
	ARWidget* arWidget = createWidget<QMainWindow>(); 
	arWidget->widget->show();

	return arWidget;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ARWidget* pushButtonCreate()
{
	ARWidget* arWidget = createWidget<QPushButton>(); 
	QPushButton* button = (QPushButton*)arWidget->widget;
	button->setText("Test");

	//button->setGeometry(QRect(QPoint(100, 100), QSize(200, 50)));
	//button->resize(100, 100);

	printf("creating pushbutton\n");

	return arWidget;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetSetTitle(ARWidget* arWidget, const char* title)
{
	arWidget->widget->setWindowTitle(title);

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetSetHeight(ARWidget* arWidget, int v)
{
	QSize size = arWidget->widget->size(); 
	size.setHeight(v);
	arWidget->widget->resize(size);

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetSetWidth(ARWidget* arWidget, int v)
{
	QSize size = arWidget->widget->size(); 
	size.setWidth(v);
	arWidget->widget->resize(size);

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetAttach(ARWidget* parent, ARWidget* widget)
{
	widget->widget->setParent(parent->widget);
	widget->widget->show();
	//widget->widget->resize(widget->widget->size());

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int update()
{
	s_application->processEvents();

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ARFuncs s_arFuncs = 
{
	.window_create_main = windowCreateMain,
	.button_create = pushButtonCreate,
	.widget_set_title = widgetSetTitle,
	.widget_set_width = widgetSetWidth,
	.widget_set_height = widgetSetHeight,
	.widget_attach = widgetAttach,
	.update = update,
};<commit_msg>Some better naming of variables<commit_after>#include <Arika/Arika.h>
#include <Arika_internal/Arika_internal.h>
#include <QApplication>
#include <QMainWindow>
#include <QPushButton>

static QApplication* s_application;

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

struct ARWidget
{
	QWidget* widget;
};

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

template<class T> ARWidget* createWidget()
{
	T* widget = new T;

	ARWidget* arWidget = new ARWidget;
	arWidget->widget = widget; 

	return arWidget; 
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ARWidget* windowCreateMain()
{
	ARWidget* arWidget = createWidget<QMainWindow>(); 
	arWidget->widget->show();

	return arWidget;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ARWidget* pushButtonCreate()
{
	ARWidget* arWidget = createWidget<QPushButton>(); 
	QPushButton* button = (QPushButton*)arWidget->widget;
	button->setText("Test");

	//button->setGeometry(QRect(QPoint(100, 100), QSize(200, 50)));
	//button->resize(100, 100);

	printf("creating pushbutton\n");

	return arWidget;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetSetTitle(ARWidget* arWidget, const char* title)
{
	arWidget->widget->setWindowTitle(title);

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetSetHeight(ARWidget* arWidget, int v)
{
	QSize size = arWidget->widget->size(); 
	size.setHeight(v);
	arWidget->widget->resize(size);

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetSetWidth(ARWidget* arWidget, int v)
{
	QSize size = arWidget->widget->size(); 
	size.setWidth(v);
	arWidget->widget->resize(size);

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int widgetAttach(ARWidget* arParent, ARWidget* arWidget)
{
	arWidget->widget->setParent(arParent->widget);
	arWidget->widget->show();
	arParent->widget->update();

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static int update()
{
	s_application->processEvents();

	return 1;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ARFuncs s_arFuncs = 
{
	.window_create_main = windowCreateMain,
	.button_create = pushButtonCreate,
	.widget_set_title = widgetSetTitle,
	.widget_set_width = widgetSetWidth,
	.widget_set_height = widgetSetHeight,
	.widget_attach = widgetAttach,
	.update = update,
};
{'fraction_non_alphanumeric': 0.47389033942558745, 'fraction_numerical': 0.007180156657963447, 'mean_word_length': 1.0546429768689238, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 71, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6409412', 'n_tokens_mistral': 1403, 'n_tokens_neox': 1331, 'n_words': 268}