box_lib.obj - библиотека gui компонентов

Discussing libraries simplifying applications development
  • Судя по весьма неплохому результату, элемент ободок в библиотеке не помешает.
    Из хаоса в космос
  • Leency wrote:Судя по весьма неплохому результату, элемент ободок в библиотеке не помешает.
    Требуется дизайнерский пиксельхантинг, может там полоски местами переставить или еще чего? А то у нас хардкордных программистов квадратно-гнездовой прямоугольный способ построения плоскостей элементов.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • И так нормально.
    Из хаоса в космос
  • Идея. Добавить в библиотеку ProgressBar.

    Мой вариант:
    Spoiler:Image
    pb_lib.obj должен быть в "/sys/lib"
    Downloaded 364 times
    pb.asm (4.05 KiB)
    Downloaded 289 times
    pb_test.asm (4.5 KiB)
    Downloaded 279 times
    Почему-то, когда окно активное, скриншотер его сворачивает, и скриншот не получается.
  • 0CodErr
    У тебя есть аккаунт SVN? Если есть прикрути, если нет аккаунта, то нужно попросить у админов.
    Я сам давно хотел выдрать код из KFM и прикрутить в качестве компонента, но руки не дошли.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • 0CodErr
    Выглядит хорошо внешне, в API пока не смотрел. Мне пришлось изобрести свой прогрессбар - можно увидеть в Лизе и ещё двум программам он уже нужен, а включать код прогрессбара в каждую - дополнительные расходы. Так что я за добавление.
    Last edited by Leency on Fri Apr 12, 2013 2:29 pm, edited 2 times in total.
    Из хаоса в космос
  • Leency wrote:а включать код скроллбара в каждую программу
    прогрессбара, не?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4 wrote:
    Leency wrote:а включать код скроллбара в каждую программу
    прогрессбара, не?
    Да, прогрессбара. Только проснулся.
    Из хаоса в космос
  • SVN r. 3470-3471 - компонент Frame (Рамка).

    Как пример использования - программа Desktop
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Не могу нормально прикрутить прогрессбар к Лизе.

    Code: Select all

    struct progressbar
    {
    	dword
    	pb_value,
    	pb_left,
    	pb_top,
    	pb_width,
    	pb_height,
    	pb_style,
    	pb_min,
    	pb_max,
    	pb_back_color,
    	pb_progress_color,
    	pb_frame_color;
    };
    
    progressbar progress_bar = {0,0,0,0,0,0,0,100,0xFFFfff,0x54B1D6,0};
    void DrawProgressBar(dword st_x, st_y, st_w, st_h, progress_percent, status_text)
    {
    	progress_bar.pb_value = progress_percent;
    	progress_bar.pb_left = st_x;
    	progress_bar.pb_top = st_y;
    	progress_bar.pb_width = st_w;
    	progress_bar.pb_height = st_h;
    	progress_bar.pb_frame_color = sc.work_graph;
    	//progressbar_draw stdcall (#progress_bar);
    	progressbar_progress stdcall (#progress_bar);
    }
    Если раскомиттить строку //progressbar_draw stdcall (#progress_bar);, то программа начинает падать вообще в другом месте. Может я делаю что не так? Когда нужно использовать progressbar_draw и когда progressbar_progress?
    В аттаче две версии. Разница в одной лишь этой строке.
    Attachments
    liza.zip (22.68 KiB)
    Downloaded 248 times
    Из хаоса в космос
  • progressbar_draw — перерисовывает полностью весь компонент.
    progressbar_progress — увеличивает value и рисует следующую часть.

    progressbar отображает, какое количество действий(работы) уже выполнено.
    progressbar_progress нужно вызывать, когда произошло очередное действие.

    Сначала задать min и max — минимальное(стартовое) и максимальное(конечное) количество действий. А потом начать выполнять сами действия.

    Code: Select all

    While WorkNotComplete
      NextWork
      If isComplete(CurrentWork) then progressbar_progress
    EndWhile
    
    progressbar_draw предполагается вызывать, когда необходимо перерисовать весь компонент, например, при перерисовке всего окна.
  • Вопрос простой: где взять описания функций(точнее даже структуры для компонентов ). Как-то раз пользовался, но всё выдирал из чужих исходников.
    Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
  • По идее должно быть тут: http://wiki.kolibrios.org/wiki/Box_lib/ru ,
    или на svn в папке (root)/programs/develop/libraries/box_lib/trunk/doc/ .
    Но там есть не все элементы.
  • Значительно больше, чем ничего) Спасибо.
    Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
  • Who is online

    Users browsing this forum: No registered users and 1 guest