Board.KolibriOS.org
https://board.kolibrios.org/

Kolibri Image Viewer
https://board.kolibrios.org/viewtopic.php?f=38&t=1209
Page 5 of 8

Author:  dunkaist [ Mon Jun 25, 2012 2:01 am ]
Post subject:  Re: Kolibri Image Viewer

Я взял на заметку.

Сейчас мне не нравится, что нельзя на лету поменять тип окна. Придётся запускать новый поток или вообще делать запуск с параметром и при переходе в режим слайд-шоу запускать новый kiv, а старый завершать. Ну или я что-то не учёл.

Иконка хорошая, спасибо.

Author:  Leency [ Mon Jun 25, 2012 2:12 am ]
Post subject:  Re: Kolibri Image Viewer

В WinXP для режима слайд шоу запускается новый поток. То, что запущено 2 программы можно увидеть по alt+tab.
Здесь можно также. Ничего криминального я в этом не вижу. Чтобы исключить альт+таб можно убивать слайд-шоу при деактивации окна - но тут могут быть подводные камни - внезапно вылезший @notify. Пока что вероятность этого чуть менее чем нулевая, так что вполне можно)

P.S. Там иконки 2 - я пост отредактировал. Мне белая даже как-то больше нравится...

Author:  Leency [ Mon Jun 25, 2012 10:06 am ]
Post subject:  Re: Kolibri Image Viewer

dunkaist wrote:
Сейчас мне не нравится, что нельзя на лету поменять тип окна.
Что-то я засомневался и решил проверить. Всё таки можно.

Spoiler: Show
Code:
#include "..\lib\kolibri.h" 
#include "..\lib\file_system.h"


int pro_inf;
int i;

void main()
{   
   dword id;
   word key;

loop()
   {
      switch(WaitEvent())
      {
         case evButton:
            id=GetButtonID();               
            if (id==1) ExitProcess();
         break;
     
        case evKey:
         key = GetKey();
         IF (key==013){ //Enter
            if (i==1) i=0; else i=1;
            draw_window();
         }
         break;
         
         case evReDraw:
         draw_window();
         break;
      }
   }
}


void draw_window()
{
   if (i==1) DefineAndDrawWindow(215,100,250,200,0x34,0xFFFFFF,0,0,"Fuck my brain!");
       else DefineAndDrawWindow(215,100,250,200,0x00,0xFFFFFF,0,0,"Fuck my brain!");
   WriteText(5,130,0x80,0,"Press Enter",0);
}


stop:


Attachments:
example.kex [928 Bytes]
Downloaded 184 times

Author:  dunkaist [ Mon Jun 25, 2012 10:48 am ]
Post subject:  Re: Kolibri Image Viewer

О, классно! А я слишком общо понял
Quote:
Положение и размеры окна устанавливаются при первом вызове этой функции и игнорируются при последующих; для изменения положения и/или размеров уже созданного окна используйте 67-ю функцию.

Author:  s1n [ Mon Jun 25, 2012 6:49 pm ]
Post subject:  Re: Kolibri Image Viewer

Leency, ну исходники то есть, так что дерзай. :3

Author:  Leency [ Mon Nov 26, 2012 2:52 am ]
Post subject:  Re: Kolibri Image Viewer

Удобно было бы, если бы в заголовке отображалось количество изображений и номер текущего, вроде
Картинка.png [2/16] - Kolibri Image Viewer

Author:  dunkaist [ Mon Nov 26, 2012 10:21 am ]
Post subject:  Re: Kolibri Image Viewer

Тогда уж [2/16] Картинка.png - Kolibri Image Viewer, чтобы глазами по заголовку не бегать в поисках этих индексов. И как ты себе представляешь определение количества картинок в папке? По расширению? По сигнатуре? А если их количество изменится во время работы программы? При каждом переходе к новой картинке перечитывать директорию?

Author:  Leency [ Mon Nov 26, 2012 1:31 pm ]
Post subject:  Re: Kolibri Image Viewer

Меня, как и всех, устроит любой вариант как он будет определять кол-во изображений в папке, если он будет работать. Сейчас KIV каким-то образом знает их кол-во и номер текущего изображения, т.к.
if (cur_num == img_num) cur_num = 0;

Author:  Leency [ Sun Dec 16, 2012 2:28 am ]
Post subject:  Re: Kolibri Image Viewer

Слайдшоу - это клёво, только сейчас как я понимаю окно делается MAXIMIZED, за счёт чего панель задач видна. А надо просто менять координаты на 0, 0 и размер окна на размер экрана.

Author:  dunkaist [ Sun Dec 16, 2012 11:04 am ]
Post subject:  Re: Kolibri Image Viewer

Не понял юмора. Проверь r3116 ещё раз.

Author:  Albom [ Sun Dec 16, 2012 12:39 pm ]
Post subject:  Re: Kolibri Image Viewer

Случайно перепутал кнопку "Слайдшоу" и "Установка изображения рабочего стола". Может к последней функции прикрутить MessageBox? ("Установить изображения?": "Да", "Нет")

Author:  dunkaist [ Sun Dec 16, 2012 1:30 pm ]
Post subject:  Re: Kolibri Image Viewer

Albom wrote:
Случайно перепутал кнопку "Слайдшоу" и "Установка изображения рабочего стола". Может к последней функции прикрутить MessageBox? ("Установить изображения?": "Да", "Нет")
Я считаю это лишним, я не буду этого делать.

Кстати, нужно как-то адекватно (компактно и понятно) предоставить пользователю выбор режима обоев (stretch, tiled, fit, etc). Если у кого-нибудь появятся идеи -- буду рад услышать. Пока в голову не пришло ничего лучше рисования букв (S, T, F, etc) на кнопке установки обоев и смены режима по правому клику. Компактно, но с понятностью не очень.

Author:  dunkaist [ Sun Dec 16, 2012 3:26 pm ]
Post subject:  Re: Kolibri Image Viewer

Leency,
я таки понял, о чём ты говорил. Если окно уже максимизировано, то его размер не изменяется. Действительно просмотрел.

Я чего-то не знаю, или у нас и правда нельзя изменить размер максимизированного окна и нельзя без помощи пользователя его размаксимизировать?

Author:  Leency [ Sun Dec 16, 2012 3:40 pm ]
Post subject:  Re: Kolibri Image Viewer

Я тоже такой не помню, - есть место для 71.2 ф.

Я проверил как zSea с этим справляется. И он таки справляется, но нехорошим образом - он изменяет размеры клиентской области. Тоесть если программа вылетит (а возможно достаточно будет просто закрыть окно в режиме слайдшоу) и панель задач уже будет не видна при максимизировании окна.

Я когда-то предлагал диамонду сделать, чтобы в KIV при нажатии на установить обоями рабочего стола выпадало меню, но он счёл это сложным. У меня очень долго хранился этот концепт и в итоге я его удалил. Всё же я считаю идею с выпадающим меню при нажатии на кнопку удачной. Кнопки поворота также надо будет сгруппировать в одну кнопку с выпадающим меню.

Я над этим поработаю и позже выложу концепт.

Author:  dunkaist [ Sun Dec 16, 2012 4:03 pm ]
Post subject:  Re: Kolibri Image Viewer

Меню к установке обоев ещё куда ни шло (хотя мне не очень нравится идея создавать второй поток и общаться с ним), потому что им пользуются не так часто. А вот поворот фотографий -- обычное дело, и если для этого придётся целиться и кликать дважды, то лично мне будет неудобно.

Если у нас станет так много функций, что не будет хватать места для кнопок, тогда подумаем и о группировке.

Page 5 of 8 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/