|
Ivan Mahonin |
7a004b |
<html>
|
|
Ivan Mahonin |
7a004b |
<head>
|
|
Ivan Mahonin |
7a004b |
<meta charset="UTF-8" />
|
|
Ivan Mahonin |
7a004b |
<link rel="stylesheet" type="text/css" href="style.css" />
|
|
Ivan Mahonin |
7a004b |
<title>Запуск и общие функции - Helianthus</title>
|
|
Ivan Mahonin |
7a004b |
</head>
|
|
Ivan Mahonin |
7a004b |
<body>
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Helianthus
|
|
Ivan Mahonin |
7a004b |
Запуск и общие функции
|
|
Ivan Mahonin |
7a004b |
Клавиатура и мышь
|
|
Ivan Mahonin |
7a004b |
Рисование
|
|
Ivan Mahonin |
cece70 |
Шрифты и текст
|
|
Ivan Mahonin |
cece70 |
Текстуры и анимация
|
|
Ivan Mahonin |
cece70 |
Буфер кадра
|
|
Ivan Mahonin |
7a004b |
Спрайты
|
|
Ivan Mahonin |
7a004b |
Группы спрайтов
|
|
Ivan Mahonin |
7a004b |
Звук
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Все функции
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Запуск и общие функции
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Для подключения и использования библиотеки Helianthus нужно:
|
|
Ivan Mahonin |
7a004b |
- подключить файл <helianthus.h>
|
|
Ivan Mahonin |
7a004b |
- создать и зарегистрировать функции для начальной загрузки и для перерисовки кадра (см. worldSetInit и worldSetDraw)
|
|
Ivan Mahonin |
1badb6 |
- также вы можете зарегистрировать функцию для выполнения каких-либо действий при завершении программы (worldSetDeinit);
|
|
Ivan Mahonin |
7a004b |
- вызвать функцию worldRun для запуска вашей программы
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Вот что должно получиться:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
#include <helianthus.h>
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void init() {
|
|
Ivan Mahonin |
7a004b |
// Здесь будут команды для начальной загрузки.
|
|
Ivan Mahonin |
7a004b |
// Они выполнятся только один раз в самом начале.
|
|
Ivan Mahonin |
7a004b |
}
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void draw() {
|
|
Ivan Mahonin |
7a004b |
// Здесь будут команды для движения и рисования.
|
|
Ivan Mahonin |
7a004b |
// Во время работы программы они будут запускаться
|
|
Ivan Mahonin |
7a004b |
// несколько раз в секунду.
|
|
Ivan Mahonin |
7a004b |
}
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
int main() {
|
|
Ivan Mahonin |
7a004b |
worldSetInit(&init);
|
|
Ivan Mahonin |
7a004b |
worldSetDraw(&draw);
|
|
Ivan Mahonin |
7a004b |
worldRun();
|
|
Ivan Mahonin |
7a004b |
return 0;
|
|
Ivan Mahonin |
7a004b |
}
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
После завершения работы Helianthus (при окончании выполнения функции worldRun) все созданные вами объекты библиотеки будут удалены автоматически. Если вы хотите удалить что-то вручную, смотрите функции удаления для соответствующих объектов (spriteDestroy, groupDestroy, soundDestroy, fontDestroy, textLayoutDestroy, animationDestroy, framebufferDestroy, closeDirectory).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
Вы можете задать размер окна программы функциями worldSetSize, worldSetWidth, worldSetHeight и задать заголовок окна функцией worldSetTitle. В отличие от большинства функций Helianthus эти функции можно вызывать до запуска worldRun.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Изначально окно имеет фиксированный размер, который вы можете менять только из программы, командами указанными выше. Однако вы можете это изменить и разрешить пользователю изменять размер окна, смотрите функцию worldSetResizable.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Окно программы непрерывно перерисовывается с частотой 24 кадра в секунду. Частоту перерисовки вы можете поменять при помощи функции worldSetFrameRate.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
Программа ведёт отсчёт времени и кадров с момента запуска вы можете получить значение этих счётчиков пи помощи функций worldGetSeconds и worldGetFrameCount. Длительность одного кадра (длительность предыдущего отрисованного кадра) можно узнать вызвав функцию worldFrameTime.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Также Helianthus предоставляет некоторые общие функции которые не представлены в стандартном я зыке C:
|
|
Ivan Mahonin |
1badb6 |
- помощники в генерации случайных чисел (randomNumber, randomFloat);
|
|
Ivan Mahonin |
cece70 |
- функция поворота вектора rotateVector;
|
|
Ivan Mahonin |
1badb6 |
- функции для чтения папок (см. openDirectory);
|
|
Ivan Mahonin |
1badb6 |
- функции проверки существования файлов и папок — fileExists, directoryExists.
|
|
Ivan Mahonin |
cece70 |
- функции для создания всплывающих окон с текстовыми сообщениями (messageBox, questionBox, questionBox3) и окон для ввода текста (askText, askTextEx).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
7a004b |
Функции:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void worldSetInit(Callback init);
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Задать функцию для начальной инициализации (загрузки). Эта функция будет запущена только один раз в самом начале работы программы, как только будет вызвана функция worldRun.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
init — указатель на функцию начальной инициализации (загрузки). Функция быть работать без параметров и не должна возвращать значение.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void worldSetDraw(Callback draw);
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Задать основную функцию вашей программы — функцию для перерисовки кадра. Во время работы программы заданная функция будет запускаться несколько раз в секунду перед перерисовкой каждого кадра. Поместите в неё команды для движения и рисования.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
draw — указатель на функцию перерисовки кадра. Функция быть работать без параметров и не должна возвращать значение.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
1badb6 |
void worldSetDeinit(Callback deinit);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Задать функцию для выполнения каких-либо действий при завершении программы. Эта функция будет запущена только один раз при окончании работы программы, непосредственно перед завершением выполнения функции worldRun.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
deinit — указатель на функцию которая будет выполнена перед завершением программы.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
7a004b |
void worldRun();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Запустить вашу программу на Helianthus. Перед вызовом этой функции нужно зарегистрировать функции начальной загрузки и перерисовки кадра (см. выше)
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void worldStop();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
acc470 |
Остановить и закрыть программу. Программа всегда закрывается если пользователь нажмёт на крестик в верхнем правом углу окна, но вы можете добавить и свои способы выхода из программы. Например, в функцию перерисовки вы можете вставить возможность выхода по нажатию клавиши Esc (см. также раздел «Клавиатура и мышь»):
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void draw() {
|
|
Ivan Mahonin |
7a004b |
…
|
|
Ivan Mahonin |
cece70 |
if (keyWentDown("escape")) {
|
|
Ivan Mahonin |
7a004b |
worldStop()
|
|
Ivan Mahonin |
7a004b |
}
|
|
Ivan Mahonin |
7a004b |
…
|
|
Ivan Mahonin |
7a004b |
}
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
int worldGetWidth();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Возвращает ширину окна в пикселях. См. также worldSetWidth.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void worldSetWidth(int width);
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
Установить ширину окна. Эту функцию можно вызывать до вызова worldRun. См. также worldGetWidth, worldSetHeight, worldSetSize.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
width — новая ширина окна.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
int worldGetHeight();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Возвращает высоту окна в пикселях. См. также worldSetHeight.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
void worldSetHeight(int height);
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
Установить высоту окна. Эту функцию можно вызывать до вызова worldRun. См. также worldGetHeight, worldSetWidth, worldSetSize.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Параметры:
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
height — новая высота окна.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
void worldSetSize(int width, int height);
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Установить сразу и ширину и высоту окна. Эту функцию можно вызывать до вызова worldRun. См. также worldSetWidth, worldSetHeight.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
width — новая ширина окна;
|
|
Ivan Mahonin |
cece70 |
height — новая высота окна.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
1badb6 |
int worldGetResizable();
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Возвращает TRUE если пользователь имеет возможность изменять размер окна, в противном случае возвращает FALSE.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
void worldSetResizable(int resizable);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
Включает или выключает возможность измерения размеров окна пользователем. Когда включено пользователь может менять размер окна растягивая его, хватаясь за границы, и, появляется кнопка для разворачивания окна на весь экран. Эту функцию можно вызывать до вызова worldRun.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
resizable — если TRUE, то разрешает пользователю изменять размер окна.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
const char* worldGetTitle();
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Возвращает установленный ранее заголовок окна (строка текста).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
void worldSetTitle(const char *title);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
Установить заголовок окна. Эту функцию можно вызывать до вызова worldRun.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
title — новый заголовок окна.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
7a004b |
void worldSetFrameRate(double frameRate);
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
Установить фиксированную частоту перерисовки окна. Эту функцию можно вызывать до вызова worldRun. См. также: worldSetFrameRateEx, worldSetVariableFrameRate.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
frameRate — количество кадров в секунду, от 1 до 100.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
void worldSetVariableFrameRate();
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Установить переменную частоту перерисовки окна в диапазоне от 1 до 100 кадров в секунду. См. также: worldSetFrameRateEx.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
double worldGetMinFrameRate();
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Возвращает ранее установленную минимальную частоту перерисовки окна. См. также: worldSetFrameRateEx.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
double worldGetMaxFrameRate();
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Возвращает ранее установленную максимальную частоту перерисовки окна. См. также: worldSetFrameRateEx().
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
double worldSetFrameRateEx(double minFrameRate, double maxFrameRate);
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Установить переменную частоту перерисовки окна. В этом режиме Helianthus будет стараться перерисовать окно как можно быстрее — но не быстрее заданной максимальной частоты. Реальная частота кадров будет зависеть от скорости компьютера. Если скорость компьютера и сложность рисуемой сцены не позволяют обеспечить даже минимальной частоты перерисовки, то Helianthus будет подменять реальное время имитируя для вашего приложения работу на скорости соответствующей минимальной частоте кадров — как результат происходящее на экране движение замедлится.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Казалось бы это очевидное поведение, но нет. В большинству программ, и, наверное, в вашей будущей программе тоже, скорость движения объектов связана со счётчиком времени. И если кадр будет рисоваться очень медленно — более секунды, то за время одного кадра движущийся объект может пройти очень большое расстояние. При этом пользователь будет лишён возможности как-то наблюдать за движением или повлиять на него. Будет лучше в этой ситуации замедлить движение объекта, но за то нарисовать несколько дополнительных кадров, показывающих промежуточные точки движения. Для этого и устанавливается минимальная частота кадров.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
См. также: worldGetMinFrameRate, worldGetMaxFrameRate, worldSetVariableFrameRate.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
minFrameRate — минимальная частота кадров;
|
|
Ivan Mahonin |
cece70 |
maxFrameRate — максимальная частота кадров.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
double worldGetFrameTime();
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Возвращает длительность отрисовки предыдущего кадра в секундах. Для первого кадра возвращается расчётное значение длительности. См. также worldSetFrameRateEx.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
int worldGetFrameCount();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Возвращает количество кадров прошедшее с момента запуска программы (с момента вызова функции worldRun. См. также worldGetSeconds.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
double worldGetSeconds();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
Возвращает количество секунд прошедшее с момента запуска программы (с момента вызова функции worldRun. Это время может отставать от реального, если компьютер слишком медленно рисовал кадры. См. также worldSetFrameRateEx, worldGetFrameCount.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
int randomNumber(int min, int max);
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Возвращает случайное целое число от min до max включительно.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Параметры:
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
min — минимальное значение для случайного числа;
|
|
Ivan Mahonin |
7a004b |
max — максимальное значение для случайного числа.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
double randomFloat();
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
Возвращает случайное дробное число в диапазоне от 0 до 1.
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
cece70 |
void rotateVector(double *x, double *y, double angle);
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Повернуть вектор (x, y) на угол angle. Функция принимает два указателя на координаты вектора, повёрнутый вектор записывается по указанным адресам вместо старого.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Параметры:
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
x — указатель на переменную хранящую координату x;
|
|
Ivan Mahonin |
cece70 |
y — указатель на переменную хранящую координату y;
|
|
Ivan Mahonin |
cece70 |
angle — угол поворота в градусах.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
1badb6 |
Directory openDirectory(const char *path);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Если папка существует, то функция читает список файлов в папке и сохраняет этот список в памяти. Возвращает значение типа Directory, которое является адресом в памяти — указателем на описание списка внутри библиотеки Helianthus.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Если папка не существует или её по какой-то причине невозможно открыть, то функция возвращает нулевой указатель (NULL).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Имена файлов можно получить при помощи функций directoryGetCount и directoryGet. После использования список нужно удалить функцией closeDirectory.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Пример:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Directory dir = openDirectory("my/directory");
|
|
Ivan Mahonin |
1badb6 |
if (dir) {
|
|
Ivan Mahonin |
1badb6 |
for(int i = 0; i < directoryGetCount(dir); ++i) {
|
|
Ivan Mahonin |
1badb6 |
printf("file: %s", directoryGet(dir, i));
|
|
Ivan Mahonin |
1badb6 |
}
|
|
Ivan Mahonin |
1badb6 |
closeDirectory(dir);
|
|
Ivan Mahonin |
1badb6 |
}
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
path — путь к папке.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
void closeDirectory(Directory directory);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Удаляет ранее загруженный список файлов из памяти. См. также openDirectory.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Важно: Скорее всего у вас в программе останется переменная в которой хранился указатель на список. Этот указатель станет недействителен — будет указывать на неопределённую область памяти — не на список файлов. Вы можете занести в эту переменную другую список файлов, но использовать старое значение переменной больше нельзя это приведёт к ошибкам и непредсказуемому поведению программы.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
int directoryGetCount(Directory directory);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Возвращает количество файлов в списке. См. также openDirectory и directoryGet.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
const char* directoryGet(Directory directory, int i);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Возвращает имя файла с указанным номером из ранее открытого списка. См. также openDirectory и directoryGet.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
i — номер файла в списке.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
int fileExists(const char *path);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Возвращает TRUE (число 1) если файл по заданному пути существует, иначе возвращает FALSE (число 0).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
path — путь к проверяемому файлу.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
int directoryExists(const char *path);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Возвращает TRUE (число 1) если папке по заданному пути существует, иначе возвращает FALSE (число 0).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
path — путь к проверяемой папке.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
void messageBox(const char *message);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Показать окно с текстовым сообщением. Работа программы будет приостановлена, до тех пор пока пользователь не закроет окно (нажав на кнопку OK, например).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
message — текстовое сообщение.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
int questionBox(const char *question, const char *answer0, const char *answer1);
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Функция показывает на экране окно вопроса с двумя вариантами ответа. Работа программы будет приостановлена до тех пор пока пользователь не выберет один из вариантов или не закроет окно вопроса (что равносильно выбору варианта номер 0). Функция возвращает номер выбранного ответа — 0 или 1. См. также: messageBox, questionBox3.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Параметры:
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
question — текст задаваемого вопроса;
|
|
Ivan Mahonin |
cece70 |
answer0 — такст варианта ответа номер 0, этот вариант выбирается если пользователь закрывает окно вопроса или нажимает клавишу Esc. Удобно использовать с текстом «Нет» или «Отмена»;
|
|
Ivan Mahonin |
cece70 |
answer1 — текст варианта ответа номер 1, этот вариант выбирается по-умолчанию если пользователь нажимает клавишу Enter. Удобно использовать с текстом «Да» или «OK».
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
int questionBox3(const char *question, const char *answer0, const char *answer1, const char *answer2);
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Функция показывает на экране окно вопроса с тремя вариантами ответа. Работа программы будет приостановлена до тех пор пока пользователь не выберет один из вариантов или не закроет окно вопроса (что равносильно выбору варианта номер 0). Функция возвращает номер выбранного ответа — 0, 1 или 2. См. также: messageBox, questionBox.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
Параметры:
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
question — текст задаваемого вопроса;
|
|
Ivan Mahonin |
cece70 |
answer0 — такст варианта ответа номер 0, этот вариант выбирается если пользователь закрывает окно вопроса или нажимает клавишу Esc. Удобно использовать с текстом «Отмена» в наборе Да/Нет/Отмена;
|
|
Ivan Mahonin |
cece70 |
answer1 — такст варианта ответа номер 1. Удобно использовать с текстом «Нет» в наборе Да/Нет/Отмена;
|
|
Ivan Mahonin |
cece70 |
answer2 — текст варианта ответа номер 2, этот вариант выбирается по-умолчанию если пользователь нажимает клавишу Enter. Удобно использовать с текстом «Да» в наборе Да/Нет/Отмена.
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
|
|
Ivan Mahonin |
cece70 |
int askText(const char *question, char *answer, int maxAnswerSize);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
Создаёт окно для ввода текста. Пользователю будет предоставлена для редактирования строка текста из параметра answer. Работа программы будет приостановлена, до тех пор пока пользователь не закончит ввод и не закроет окно. Возвращает TRUE (число 1) при успешном вводе и FALSE (число 0) если пользователь отменил ввод. См. также askTextEx.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
question — сообщение для пользователя;
|
|
Ivan Mahonin |
1badb6 |
answer — указатель на строку куда будет сохранён ответ, также этот параметр используется чтобы задать начальное значение для текстового поля;
|
|
Ivan Mahonin |
1badb6 |
maxAnswerSize — максимальный размер для строки ответа в байтах включая ограничивающий нулевой байт.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
int askTextEx(const char *question, char *answer, int maxAnswerSize, int multiline, int password);
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
cece70 |
Создаёт окно для ввода текста. Пользователю будет предоставлен для редактирования текст из параметра answer. Позволяет работать с многострочным текстом и прятать вводимые символы (для ввода пароля). Работа программы будет приостановлена, до тех пор пока пользователь не закончит ввод и не закроет окно. Возвращает TRUE (число 1) при успешном вводе и FALSE (число 0) если пользователь отменил ввод. См. также askText.
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
Параметры:
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
1badb6 |
question — сообщение для пользователя;
|
|
Ivan Mahonin |
1badb6 |
answer — указатель на строку куда будет сохранён ответ, также этот параметр используется чтобы задать начальное значение для текстового поля;
|
|
Ivan Mahonin |
1badb6 |
maxAnswerSize — максимальный размер для строки ответа в байтах включая ограничивающий нулевой байт;
|
|
Ivan Mahonin |
1badb6 |
multiline — если TRUE, то будет отображаться поле для ввода многострочного текста;
|
|
Ivan Mahonin |
1badb6 |
password — если TRUE, то вводимые символы будут спрятаны (можно использовать для ввода паролей).
|
|
Ivan Mahonin |
1badb6 |
|
|
Ivan Mahonin |
7a004b |
|
|
Ivan Mahonin |
7a004b |
</body>
|
|
Ivan Mahonin |
7a004b |
</html>
|