[GSoC] Новая таблица системных цветов.
-
Наконец нашел время изучить. Сразу возник вопрос относительно обратной совместимости. Нужно либо согласовывать проектную документацию, либо использовать новые подфункции.Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
ПЕРВЫЙ ВАРИАНТ:Mario_r4 wrote:Наконец нашел время изучить. Сразу возник вопрос относительно обратной совместимости. Нужно либо согласовывать проектную документацию, либо использовать новые подфункции.
- с тебя новая подфункция, как она будет устроена, будет ли она возвращать всю таблицу, или кусками (WIN,BTN,3D,ELEM) или оба варианта - решай сам, пока оставляешь старую подфункцию. Собираешь дефолтный скин (обзовем его А).
- с меня перевод программ (на fasm, c--, masm) на новую подфункцию, все что смогу изменю (ночная сборка, ISO).
- там смотрим уже программы сорцов которых нету, или с которыми я не справлюсь и решаем как быть с ними, если софтины не важные или не сложные, то нужно будет выпилить старую подфункцию и выпилить это из скина. Если так то следом пойде переделывать скины (обзовем их Б).
- Если обратную совместимость будет решено оставить, то пойду переделывать скины (типа А).
PS: поначалу чисто дефолтный скин, чтобы 2 раза их не перепиливать.
ВТОРОЙ ВАРИАНТ
прописать пока структуру с системными цветами в MACROS.INC, типо:
Code: Select all
struct BOX
left dd ?
top dd ?
width dd ?
height dd ?
ends
а потом уже делать подфункцию!
Это даст минимум риска по незаконченности работы с переписыванием приложений.
Две подфункции:
- старая возвращает текущие цвета
- новая функция "Получить расширенную таблицу цветов" - возвращает старые+новые цвета.
В итоге, совместимость будет сохранена.
- старая возвращает текущие цвета
- новая функция "Получить расширенную таблицу цветов" - возвращает старые+новые цвета.
В итоге, совместимость будет сохранена.
Из хаоса в космос
сделал таблицу совместимости, в принципе ничего не должно поломать.
- Attachments
-
-
1.txt (3.88 KiB)Downloaded 370 times
-
Предварительный набросок формата файла скинов.
Старался учитывать темы подобные этой
viewtopic.php?f=36&t=1612
Идеи, замечания, косяки мнения приветствуются.
PS: запостил тут, чтобы в чате не отвлекать народ да и не затерялось.
Старался учитывать темы подобные этой
viewtopic.php?f=36&t=1612
Spoiler:
Code: Select all
;=============================================================================;
; Спецификация New Skin для операционной системы Kolibri ;
;=============================================================================;
; header ---------------------------------------------------------------------;
struct data_header
header db 'KSKIN' ; +5 ;
version dw ? ; +7 ;
null db 0 ; +8 ;
ends
; data -----------------------------------------------------------------------;
struct SKIN_DATA
win.face dd ? ; - Фон обводки активного окна. ; +12 ;
win.inface dd ? ; - Фон обводки неактивного окна. ; +16 ;
win.frame dd ? ; - Цвет внешней рамки активного окна. ; +20 ;
win.inframe dd ? ; - Цвет внешней рамки неактивного окна. ; +24 ;
win.border dd ? ; - Цвет внутренней рамки активного окна. ; +28 ;
win.inborder dd ? ; - Цвет внутренней рамки неактивного окна. ; +32 ;
win.body dd ? ; - Фон клиентской части активного окна. ; +36 ;
win.title dd ? ; - Цвет текста полосы заголовка. ; +40 ;
win.text dd ? ; - Цвет текста в рабочей области окна. ; +44 ;
win.graytext dd ? ; - Цвет неактивного текста. ; +48 ;
child.body dd ? ; - Фон дочерних потоков и меню приложения. ; +52 ;
child.text dd ? ; - Цвет текста дочерних потоков и меню. ; +56 ;
panel.body dd ? ; - Фон панелей приложения. ; +60 ;
panel.text dd ? ; - Цвет текста панелей приложения. ; +64 ;
hint.body dd ? ; - Фон подсказки. ; +68 ;
hint.text dd ? ; - Цвет текста подсказки. ; +72 ;
btn.face dd ? ; - Фон кнопки. ; +76 ;
btn.inface dd ? ; - Фон неактивной кнопки. ; +80 ;
btn.fcface dd ? ; - Фон кнопки при наведении. ; +84 ;
btn.frame dd ? ; - Цвет рамки кнопки. ; +88 ;
btn.inframe dd ? ; - Цвет рамки неактивной кнопки. ; +92 ;
btn.fcframe dd ? ; - Цвет рамки кнопки при навдении. ; +96 ;
btn.text dd ? ; - Цвет текста кнопки. ; +100 ;
btn.intext dd ? ; - Цвет текста неактивной кнопки. ; +104 ;
btn.fctext dd ? ; - Цвет текста кнопки при наведении. ; +108 ;
3d.face dd ? ; - Основной цвет наложения тени (скролл). ; +112 ;
3d.dark dd ? ; - Теневая обводка. ; +116 ;
3d.light dd ? ; - Световая обводка. ; +120 ;
3d.shadow dd ? ; - Цвет тени для неактивных элементов. ; +124 ;
gui.face dd ? ; - Фон элементов. ; +128 ;
gui.inface dd ? ; - Фон неактивных элементов. ; +132 ;
gui.fcface dd ? ; - Фон элементов при наведении. ; +136 ;
gui.frame dd ? ; - Рамка элемента. ; +140 ;
gui.inframe dd ? ; - Рамка неактивного элемента. ; +144 ;
gui.fcframe dd ? ; - Рамка элемента при наведении. ; +148 ;
gui.text dd ? ; - Цвет текста элемента. ; +152 ;
gui.intext dd ? ; - Цвет текста неактивного элемента. ; +156 ;
gui.fctext dd ? ; - Цвет текста элемента при наведении. ; +160 ;
res.a dd ? ; - Зарезервированно. ; +164 ;
res.b dd ? ; - Зарезервированно. ; +168 ;
res.c dd ? ; - Зарезервированно. ; +172 ;
res.d dd ? ; - Зарезервированно. ; +176 ;
res.e dd ? ; - Зарезервированно. ; +180 ;
ends
; params ---------------------------------------------------------------------;
struct SKIN_PARAMS
use.3d db 0 ; - Использовать тени для элементов. (0 выкл) ; +181 ;
use.noangle db 0 ; - Не рисовать угловые пиксели элементов. ; +182 ;
use.winrad db 0 ; - Использовать скругленные края у окна. ; +183 ;
; 0 - нет; 1 - псевдо; 2 - альфа ; ;
use.focus db 0 ; - Отрисовывать наведение на элементы. ; +184 ;
use.face db 1 ; - Использовать ли обводку вокруг окна (1 вкл) ; +185 ;
face.w db 3 ; - Ширина обводки ; +186 ;
use.reserv dw ? ; - Зарезервированно ; +188 ;
ends
; title ----------------------------------------------------------------------;
struct SKIN_TITLE
text.align db 0 ; 0 - слева, 1 - середина, 2 - справа ; +189 ;
text.x dw ? ; Смещение относительно положения в пикселях. ; +191 ;
text.y dw ? ; Смещение относительно положения в пикселях. ; +193 ;
btn.align db 1 ; 0 - слева, 1 - справа; ; +194 ;
btn.w dw ? ; Ширина системных кнопок. ; +196 ;
btn.h dw ? ; Высота системных кнопок. ; +198 ;
btn.x dw ? ; Смещение относительно положения в пикселях. ; +200 ;
btn.y dw ? ; Смещение относительно положения в пикселях. ; +202 ;
btn.step db ? ; Расстояние между системными кнопками. ; +203 ;
height db ? ; Высота заголовка. ; +204 ;
alpha dd ? ; Цвет псевдо прозрачности ; +208 ;
reserved dd ? ; Зарезервированно. ; +212 ;
ends
; image ----------------------------------------------------------------------;
struct SKIN_ANGLE
ltop.w db ? ; Ширина левого верхнего изображения ; +213 ;
ltop.h db ? ; Высота левого верхнего изображения ; +214 ;
lbot.w db ? ; Ширина левого нижнего изображения ; +215 ;
lbot.h db ? ; Высота левого нижнего изображения ; +216 ;
rtop.w db ? ; Ширина правого верхнего изображения ; +217 ;
rtop.h db ? ; Высота правого верхнего изображения ; +218 ;
rbot.w db ? ; Ширина правого нижнего изображения ; +219 ;
rbot.h db ? ; Высота правого нижнего изображения ; +220 ;
ends
; buttons --------------------------------------------------------------------;
struct SKIN_BTN
file 'close.raw' ; btn.w * btn.h * 3 (BBGGRR) активное ;
file 'iclose.raw' ; btn.w * btn.h * 3 (BBGGRR) неактивное ;
file 'fclose.raw' ; btn.w * btn.h * 3 (BBGGRR) при наведении ;
file 'full.raw' ; btn.w * btn.h * 3 (BBGGRR) активное ;
file 'ifull.raw' ; btn.w * btn.h * 3 (BBGGRR) неактивное ;
file 'ffull.raw' ; btn.w * btn.h * 3 (BBGGRR) при наведении ;
file 'mini.raw' ; btn.w * btn.h * 3 (BBGGRR) активное ;
file 'imini.raw' ; btn.w * btn.h * 3 (BBGGRR) неактивное ;
file 'fmini.raw' ; btn.w * btn.h * 3 (BBGGRR) при наведении ;
; ЕСЛИ SKIN_PARAMS.use.winrad = 2 (полноценная альфа) ;
; ТО btn.w * btn.h * 4 (RRGGBBAA) ;
ends
; images ---------------------------------------------------------------------;
struct SKIN_IMAGE
file 'ltop.raw' ; ltop.w * ltop.h * 3 (BBGGRR) активное ;
file 'lbot.raw' ; lbot.w * lbot.h * 3 (BBGGRR) активное ;
file 'rtop.raw' ; rtop.w * rtop.h * 3 (BBGGRR) активное ;
file 'rbot.raw' ; rbot.w * rbot.h * 3 (BBGGRR) активное ;
file 'iltop.raw' ; iltop.w * iltop.h * 3 (BBGGRR) неактивное ;
file 'ilbot.raw' ; ilbot.w * ilbot.h * 3 (BBGGRR) неактивное ;
file 'irtop.raw' ; irtop.w * irtop.h * 3 (BBGGRR) неактивное ;
file 'irbot.raw' ; irbot.w * irbot.h * 3 (BBGGRR) неактивное ;
; ЕСЛИ SKIN_PARAMS.use.winrad = 2 (полноценная альфа) ;
; ТО xxxx.w * xxxx.h * 4 (RRGGBBAA) ;
ends
;=============================================================================;
PS: запостил тут, чтобы в чате не отвлекать народ да и не затерялось.
Вдруг кому пригодится:
Зависимости 0 функции
Текущий формат скинов без купюр и макросов:
Зависимости 0 функции
Spoiler:
Code: Select all
;--------------------------------------------+--------------+
; FUNCTION | FILE |
;--------------------------------------------+--------------+
syscall_draw_window ; window.inc ;
|-> window._.sys_set_window ; window.inc ;
-> wakeup_osloop ; kernel.asm ;
-> window._.check_window_position ; window.inc ;
-> window._.set_window_clientbox ; window.inc ;
-> waredraw ; window.inc ;
-> window._.check_window_draw ; window.inc ;
-> window._.window_activate ; window.inc ;
-> window._.set_screen ; window.inc ;
-> read_process_memory ; taskman.inc ;
-> calculatescreen ; window.inc ;
-> window._.set_screen ; window.inc ;
-> read_process_memory ; taskman.inc ;
|-> window._.draw_window_caption.2 ; window.inc ;
-> dtext_asciiz_esi ; font.inc ;
|-> drawwindow_I ; window.inc ;
-> draw_rectangle ; window.inc ;
-> __sys_draw_line ; vesa20.inc ;
-> drawwindow_I_caption ; window.inc ;
-> __sys_draw_line ; vesa20.inc ;
-> vesa20_drawbar ; vesa20.inc ;
|-> __sys_draw_pointer ; mousedrv.inc ;
|-> drawwindow_III ; window.inc ;
-> draw_rectangle ; window.inc ;
-> __sys_draw_line ; vesa20.inc ;
-> drawwindow_III_caption ; window.inc ;
-> __sys_draw_line ; vesa20.inc ;
-> vesa20_drawbar ; vesa20.inc ;
|-> drawwindow_IV ; skincode.inc ;
-> draw_rectangle ; window.inc ;
-> __sys_draw_line ; vesa20.inc ;
-> drawwindow_IV_caption ; skincode.inc ;
-> sys_putimage.forced ; kernel.asm ;
-> vesa20_drawbar ; vesa20.inc ;
;============================================================
Spoiler:
Code: Select all
Signature dd 'SKIN' ;+4
Version dd 1 ;+8
Params dd 0x14 ;+12 offset dd*5 = 20
Buttons dd 0x64 ;+16 offset dd*25 = 100
Bitmaps dd 0x80 ;+20 offset dd*32 = 128
; params
height dd 21 ;+24
margins.right dw 43 ;+26
margins.left dw 5 ;+28
margins.top dw 1 ;+30
margins.bottom dw 1 ;+32
active.binner dd 0xE1E1E1 ;+36
active.bouter dd 0xA1A1A1 ;+40
active.bframe dd 0xE1E1E1 ;+44
inactive.binner dd 0xE1E1E1 ;+48
inactive.bouter dd 0xA1A1A1 ;+52
inactive.bframe dd 0xE1E1E1 ;+56
dtpsize dd 40 ;+60
sc.frame dd 0x003E3635 ;+64
sc.grab dd 0x00524947 ;+68
sc.grab_button dd 0x00524947 ;+72
sc.grab_button_text dd 0x00FFFFFF ;+76
sc.grab_text dd 0x00444444 ;+80
sc.work dd 0x00E1E1E1 ;+84
sc.work_button dd 0x00EBEBEB ;+88
sc.work_button_text dd 0x002F2F2F ;+92
sc.work_text dd 0x00000000 ;+96
sc.work_graph dd 0x00635A56 ;+100
BUTTON_1 dd 1 ;+104
close.left dw -18 ;+106
close.top dw 4 ;+108
close.right dw 13 ;+110
close.bottom dw 14 ;+112
BUTTON_2 dd 2 ;+116
mini.left dw -36 ;+118
mini.top dw 4 ;+120
mini.right dw 13 ;+122
mini.bottom dw 14 ;+124
but_common dd 0 ;+128
offset.1.a dw 1 ;+130 id
offset.1.b dw 1 ;+132 active
offset.1.c dw 0xb4 ;+134 180
offset.1.d dw 0 ;+136 reserved
offset.2.a dw 1 ;+138 id
offset.2.b dw 0 ;+140 inactive
offset.2.c dw 0x013c ;+142 316
offset.2.d dw 0 ;+144 reserved
offset.3.a dw 2 ;+146 id
offset.3.b dw 1 ;+148 active
offset.3.c dw 0x01c4 ;+150 452
offset.3.d dw 0 ;+152 reserved
offset.4.a dw 2 ;+154 id
offset.4.b dw 0 ;+156 inactive
offset.4.c dw 0x1774 ;+158 6004
offset.4.d dw 0 ;+160 reserved
offset.5.a dw 3 ;+162 id
offset.5.b dw 1 ;+164 active
offset.5.c dw 0x2d24 ;+166 11556
offset.5.d dw 0 ;+168 reserved
offset.6.a dw 3 ;+170 id
offset.6.b dw 0 ;+172 inactive
offset.6.c dw 0x2d6c ;+174 11628
offset.6.d dw 0 ;+176 reserved
ofs_common dd 0 ;+180
image.1.w dd 2 ;+182
image.1.h dd 0x15 ;+184
file 'left1.raw' ;+184+126=+310
image.1.e dw 0x9090 ;+312 (126 mod 4)
image.2.w dd 2 ;+316
image.2.h dd 0x15 ;+320
file 'left2.raw' ;+320+126=446
image.2.e dw 0x9090 ;+448 (126 mod 4)
image.3.w dd 88 ;+452
image.3.h dd 0x15 ;+456
file 'right1.raw' ;+456+5544=+6000
image.4.w dd 88 ;+6004
image.4.h dd 0x15 ;+6008
file 'right2.raw' ;+6008+5544=+11552
image.5.w dd 1 ;+11556
image.5.h dd 0x15 ;+11560
file 'center1.raw' ;+11560+63=+11623
image.5.e db 0x90 ;+11624 (63 mod 4)
image.6.w dd 1 ;+11628
image.6.h dd 0x15 ;+11632
file 'center2.raw' ;+11632+63=+11695
image.6.e db 0x90 ;+11696 (63 mod 4)
;=11700
Akyltist wrote:Code: Select all
-> wakeup_osloop ; kernel.asm ;
Code: Select all
mov [redrawmouse_unconditional], 1
call wakeup_osloop
Сделаем мир лучше!
Спасибо за разъяснение, помоему оно даже было где то в исходниках, я к сожалению указывал чисто физическое расположение кода, так как с особенностью устройства ядра - пока только разбираюсь!CleverMouse wrote:Akyltist wrote:Code: Select all
-> wakeup_osloop ; kernel.asm ;
Логически это вызов redrawmouse из mousedrv.inc посредством osloop->__sys_draw_pointer. Код так организован, чтобы отрисовкой курсора всегда занимался главный поток, один из вариантов синхронизации, предотвращающий одновременную отрисовку одного и того же из нескольких потоков.Code: Select all
mov [redrawmouse_unconditional], 1 call wakeup_osloop
ТЕСТ РАСШИРЕННОЙ ТАБЛИЦЫ ЦВЕТОВ
http://akyltist.ucoz.org/kolibri/kolibri.img
Kernel API не менялся.
Вероятно одна из последних редакций таблицы цветов (ВАШИ ЗАМЕЧАНИЯ!)
http://akyltist.ucoz.org/kolibri/kolibri.img
Code: Select all
/rd/1/Color
Kernel API не менялся.
Spoiler:
Code: Select all
mov eax,48 ; Функция 48 - стили отображения окон
mov ebx,3 ; Подфункция 3 - получить стандартные цвета окон.
mov ecx,sc ; Указатель на буфер размером edx байт, под структуру
mov edx,192 ; Размер таблицы цветов
int 0x40 ; Прерывание
struc system_colors
{
__child_body dd child_body
__3d_face dd 3d_face
__3d_dark dd 3d_dark
__3d_light dd 3d_light
__win_title dd win_title
__win_body dd win_body
__btn_face dd btn_face
__btn_text dd btn_text
__win_text dd win_text
__panel_body dd panel_body
__win_face dd win_face
__win_inface dd win_inface
__win_frame dd win_frame
__win_inframe dd win_inframe
__win_border dd win_border
__win_inborder dd win_inborder
__win_graytext dd win_graytext
__child_frame dd child_frame
__child_text dd child_text
__panel_frame dd panel_frame
__panel_text dd panel_text
__hint_frame dd hint_frame
__hint_body dd hint_body
__hint_text dd hint_text
__btn_inface dd btn_inface
__btn_fcface dd btn_fcface
__btn_frame dd btn_frame
__btn_inframe dd btn_inframe
__btn_fcframe dd btn_fcframe
__btn_intext dd btn_intext
__btn_fctext dd btn_fctext
__3d_shadow dd 3d_shadow
__gui_face dd gui_face
__gui_inface dd gui_inface
__gui_fcface dd gui_fcface
__gui_frame dd gui_frame
__gui_inframe dd gui_inframe
__gui_fcframe dd gui_fcframe
__gui_text dd gui_text
__gui_intext dd gui_intext
__gui_fctext dd gui_fctext
__gui_select dd gui_select
__res_var2 dd reserved
__res_var3 dd reserved
__res_var4 dd reserved
__res_var5 dd reserved
__res_var6 dd reserved
__res_var7 dd reserved
}
struct system_colors
Spoiler:
Code: Select all
win_face equ 0xE1E1E1 ; - Фон обводки активного окна. ; 1
win_inface equ 0xE1E1E1 ; - Фон обводки неактивного окна. ; 2
win_frame equ 0x204962 ; - Цвет внешней рамки активного окна. ; 3
win_inframe equ 0xA1A1A1 ; - Цвет внешней рамки неактивного окна. ; 4
win_border equ 0xE1E1E1 ; - Цвет внутренней рамки активного окна. ; 5
win_inborder equ 0xE1E1E1 ; - Цвет внутренней рамки неактивного окна. ; 6
win_body equ 0xE4DFE1 ; - Фон клиентской части активного окна. ; 7
win_title equ 0x2F2F2F ; - Цвет текста полосы заголовка. ; 8
win_text equ 0x000000 ; - Цвет текста в рабочей области окна. ; 9
win_graytext equ 0x666666 ; - Цвет неактивного текста. ; 0
child_frame equ 0x204962 ; - Цвет внешней рамки дочерних потоков ; 1
child_body equ 0xD4D4D4 ; - Фон дочерних потоков и меню приложения. ; 2
child_text equ 0x3C415B ; - Цвет текста дочерних потоков и меню. ; 3
panel_frame equ 0x94AECE ; - Цвет внешней рамки панелей ; 4
panel_body equ 0xE4DFE1 ; - Фон панелей приложения. ; 5
panel_text equ 0x2F2F2F ; - Цвет текста панелей приложения. ; 6
hint_frame equ 0x94AECE ; - Цвет внешней рамки подсказок ; 7
hint_body equ 0xFAF8FA ; - Фон подсказки. ; 8
hint_text equ 0x3C415B ; - Цвет текста подсказки. ; 9
btn_face equ 0xEFEBEF ; - Фон кнопки. ; 0
btn_inface equ 0xF4F2F4 ; - Фон неактивной кнопки. ; 1
btn_fcface equ 0xEFEBEF ; - Фон кнопки при наведении. ; 2
btn_frame equ 0x94AECE ; - Цвет рамки кнопки. ; 3
btn_inframe equ 0xB9CBE0 ; - Цвет рамки неактивной кнопки. ; 4
btn_fcframe equ 0x94AECE ; - Цвет рамки кнопки при наведении. ; 5
btn_text equ 0x2F2F2F ; - Цвет текста кнопки. ; 6
btn_intext equ 0x5F5F5F ; - Цвет текста неактивной кнопки. ; 7
btn_fctext equ 0x222222 ; - Цвет текста кнопки при наведении. ; 8
3d_face equ 0xCED0D0 ; - Основной цвет наложения тени (скролл). ; 9
3d_dark equ 0xC7C7C7 ; - Теневая обводка. ; 0
3d_light equ 0xFFFFFF ; - Световая обводка. ; 1
3d_shadow equ 0xFFFFFF ; - Цвет тени для неактивных элементов. ; 2
gui_face equ 0xFAF8FA ; - Фон элементов. ; 3
gui_inface equ 0xF6F3F6 ; - Фон неактивных элементов. ; 4
gui_fcface equ 0xFAF8FA ; - Фон элементов при наведении. ; 5
gui_frame equ 0x94AECE ; - Рамка элемента. ; 6
gui_inframe equ 0xB9CBE0 ; - Рамка неактивного элемента. ; 7
gui_fcframe equ 0x94AECE ; - Рамка элемента при наведении. ; 8
gui_text equ 0x2F2F2F ; - Цвет текста элемента. ; 9
gui_intext equ 0x5F5F5F ; - Цвет текста неактивного элемента. ; 0
gui_fctext equ 0x2F2F2F ; - Цвет текста элемента при наведении. ; 1
gui_select equ 0xC7C9C9 ; - Цвет фона полосы выделения текста . ; 2
reserved equ 0x000000 ; - Зарезервированно.
Отлично. Круто, что дело движется
1. Цвета панелей исчезли. Может быть их можно как-то пофиксить, чтобы не ломать совместимость?
2. Можно попросить написать программу для демонстрации всех цветов?
1. Цвета панелей исчезли. Может быть их можно как-то пофиксить, чтобы не ломать совместимость?
2. Можно попросить написать программу для демонстрации всех цветов?
Из хаоса в космос
Покажи плз, возможно не правильно в скин просто забил, т.к. старые цвета старался не трогать!Leency wrote:Отлично. Круто, что дело движется
1. Цвета панелей исчезли. Может быть их можно как-то пофиксить, чтобы не ломать совместимость?
2. Можно попросить написать программу для демонстрации всех цветов?
Програмку допишу!
Скрин.
- Attachments
-
-
JB4aklA.png (78.15 KiB)Viewed 9136 times
-
Из хаоса в космос
Спасибо, все поправил. Да неправильно забиндил. Вместо Panel_Frame воткнул туда Panel_Body!Leency wrote:Скрин.
Все ссылки в том же сообщении, буду допиливать приложение для наглядности!
Допилил приложение:
1) подписаны цвета
2) сделал разбиение на 4 группы
3) все отрисовано системными цветами
4) кнопки реагируют на "фокус", отрисованы системными цветами, за исключением стрелок 6 на 10 пикселей.
ЯДРО: http://akyltist.ucoz.org/kolibri/kolibri.img
Приложение: "Color" на "/rd/1/color"
Spoiler:
2) сделал разбиение на 4 группы
3) все отрисовано системными цветами
4) кнопки реагируют на "фокус", отрисованы системными цветами, за исключением стрелок 6 на 10 пикселей.
ЯДРО: http://akyltist.ucoz.org/kolibri/kolibri.img
Приложение: "Color" на "/rd/1/color"
За подсветку < / > при наведении спасибо. Но ты не понял, что я имел ввиду.
Смотри: добавлено много новых цветов и я, и другие кто будет создавать или модифицировать скины слабо представляем как и где эти цвета должны использоваться. У цветов есть описание - да, но его не достаточно: нужна программа пустышка, с примером использования этих цветов. Т.е. программа ничего не делающая, а просто содержащая в себе элементы: обычная кнопка, неактивная кнопка, панель, editbox, текст, текст с тенью. Ну вроде, как программа "desktop" сейчас. На этой программе можно будет тестировать создаваемые скины.
Это просто пожелание, извини, если напрягаю.
Смотри: добавлено много новых цветов и я, и другие кто будет создавать или модифицировать скины слабо представляем как и где эти цвета должны использоваться. У цветов есть описание - да, но его не достаточно: нужна программа пустышка, с примером использования этих цветов. Т.е. программа ничего не делающая, а просто содержащая в себе элементы: обычная кнопка, неактивная кнопка, панель, editbox, текст, текст с тенью. Ну вроде, как программа "desktop" сейчас. На этой программе можно будет тестировать создаваемые скины.
Это просто пожелание, извини, если напрягаю.
Из хаоса в космос
Who is online
Users browsing this forum: No registered users and 2 guests