Commit Graph

55 Commits

Author SHA1 Message Date
Mihail Semenyako (mike.dld)
ddd29cc90f gui/mouse.inc:
+  new file for GUI-related mouse events handling (old mouse.inc renamed)
gui/button.inc and gui/window.inc:
  * refactoring in regards of new mouse.inc:
    * obsolete code eliminated
    * old'n'ugly `check_buttons` and `checkwindows` removed
    * events handlers added
gui/window.inc:
  * moved GUI-related syscalls and auxilary functions from kernel.asm
  * removed registers cross-ordering from syscall 67 (window move/resize)
+ more comments added
known bugs include:
  1. apps using syscall 67 (kfar etc.) may not redraw their old screen area leaving ghost images
  2. possibility of mouse cursor artefacts may have increased (this *really* has to be reworked)

git-svn-id: svn://kolibrios.org@1391 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-02-06 19:08:19 +00:00
Alexey Teplov (
abfe37adc4 small changes and optimization
git-svn-id: svn://kolibrios.org@1369 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-01-08 12:39:50 +00:00
Mihail Semenyako (mike.dld)
dd75d94380 * gui/window.inc optimizations: check_window_position & set_screen speedup
git-svn-id: svn://kolibrios.org@1368 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-01-08 12:20:53 +00:00
Mihail Semenyako (mike.dld)
892d2df51e * gui/window.inc refactoring
git-svn-id: svn://kolibrios.org@1362 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-01-05 01:28:11 +00:00
Alexey Teplov (
e9e908d84d sys functions 71 and 69 without shift-registers call.(I'm not sure all change is right.
git-svn-id: svn://kolibrios.org@1329 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-12-23 18:43:42 +00:00
Alexey Teplov (
9d75a9ca5e bugfix previous revision
git-svn-id: svn://kolibrios.org@1326 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-12-17 17:21:48 +00:00
Alexey Teplov (
e76fbc9647 sys function 48 is run without cross registers call now.
git-svn-id: svn://kolibrios.org@1324 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-12-16 15:19:40 +00:00
Sergey Semyonov (Serge)
77f37d9ba0 kms: pre rc8
git-svn-id: svn://kolibrios.org@1300 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-12-01 13:32:57 +00:00
Marat Zakiyanov (Mario79)
e5ab88e796 Additional fix related to revision 1172.
git-svn-id: svn://kolibrios.org@1225 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-10-22 17:46:36 +00:00
Evgeny Grechnikov (Diamond)
c84192cba4 * commented redundant messages for window moving and process creating
* added CPU frequency output in boot log

git-svn-id: svn://kolibrios.org@1038 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-02-20 12:01:31 +00:00
Evgeny Grechnikov (Diamond)
fa362db291 bugfix in revision 986 + small optimization from Galkov
git-svn-id: svn://kolibrios.org@994 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-01-02 08:59:23 +00:00
Evgeny Grechnikov (Diamond)
d2029b5462 redo of revision 970 considering revision 985
git-svn-id: svn://kolibrios.org@986 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-12-29 17:34:06 +00:00
heavyiron
bd0962c50e Bugfix of 415 revision
git-svn-id: svn://kolibrios.org@985 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-12-29 16:21:13 +00:00
Evgeny Grechnikov (Diamond)
a483e0ffe6 a window is activated only once when mouse button is pressed
git-svn-id: svn://kolibrios.org@970 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-12-17 12:38:37 +00:00
Evgeny Grechnikov (Diamond)
5bdf2ad9db bugfix in height of rolled-up window with style 4
git-svn-id: svn://kolibrios.org@961 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-12-14 20:31:20 +00:00
Evgeny Grechnikov (Diamond)
a881989d7c bugfix in sysfn 67: avoid system crash for invalid parameter
git-svn-id: svn://kolibrios.org@856 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-08-25 16:37:47 +00:00
heavyiron
88d5b111cd Temporary fix in "check_window_position". In future we need negative coordinates support without this procedure :-)
git-svn-id: svn://kolibrios.org@768 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-03-07 11:56:20 +00:00
Sergey Semyonov (Serge)
89e64cc63e supported videomodes
git-svn-id: svn://kolibrios.org@753 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-02-22 12:38:59 +00:00
Evgeny Grechnikov (Diamond)
ebeed28881 * V86 manager
* support of drives visible by BIOS through V86 mode
* shutdown fixes
* background redraw fixes
* when booting from CD/DVD, load all floppy by tracks, not only used sectors

git-svn-id: svn://kolibrios.org@709 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-02-04 15:31:59 +00:00
Evgeny Grechnikov (Diamond)
e02112ea70 deleting cross registers in system calls, part 2
git-svn-id: svn://kolibrios.org@684 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-12-17 11:04:07 +00:00
Evgeny Grechnikov (Diamond)
c2a771d335 restoring window after rolling up does not allow invalid window coordinates
git-svn-id: svn://kolibrios.org@679 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-12-08 19:46:57 +00:00
SPraid (simba)
dd397def14 shade window Y=4
interval boot screen for "d" parameter

git-svn-id: svn://kolibrios.org@599 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-08-01 02:00:19 +00:00
Mihail Semenyako (mike.dld)
92f657f440 Revision numbering fix
git-svn-id: svn://kolibrios.org@593 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-07-27 13:52:03 +00:00
SPraid (simba)
d7d49c0feb added window type (Y=4). skinned window with fixed sizes
git-svn-id: svn://kolibrios.org@549 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-06-22 00:17:28 +00:00
Evgeny Grechnikov (Diamond)
61c54a1be6 * Correct value of selector gs
* Support for kpack'ed skin files
* Default setting for DMA access is now "disabled"
* Fixed kernel fault when network packet sending

git-svn-id: svn://kolibrios.org@523 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-05-25 09:37:08 +00:00
kastigar
510a108c5d 1)ps2 mouse driver(removed from kernel)
2)new 2 modes for ps2-mouse (scrolling mouse and 5-button mouse)
3) added function 37.7 for mouse scrolling data

git-svn-id: svn://kolibrios.org@479 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-05-08 11:32:58 +00:00
Sergey Semyonov (Serge)
fef69aab20 merge flat kernel
git-svn-id: svn://kolibrios.org@465 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-04-18 06:37:14 +00:00
Sergey Semyonov (Serge)
5b119159d4 copyrights
git-svn-id: svn://kolibrios.org@431 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-26 12:18:08 +00:00
victor
21e4bc0233 added computing of current #revision for kernel *.inc and *.asm files
git-svn-id: svn://kolibrios.org@425 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-21 22:58:33 +00:00
heavyiron
5efd9e7bcf Mods by vhanla:
- Window is grabbed to drag only if you CLICK on its grab area (ie. the title bar) 
- Button is selected only if it is clicked on its area

git-svn-id: svn://kolibrios.org@415 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-12 21:54:24 +00:00
Sergey Semyonov (Serge)
3764b8d630 fixed bug in init_LFB()
git-svn-id: svn://kolibrios.org@389 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-05 21:37:28 +00:00
Sergey Semyonov (Serge)
1ced1382c9 replace all vars whith symbolic constants
git-svn-id: svn://kolibrios.org@381 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-01 20:32:19 +00:00
Sergey Semyonov (Serge)
a90d0cfe1d replace vars 0x8000 0xC000 0xC004 0xD000 0x80000 whith symbolic constants
rename PROC_BASE -> SLOT_BASE


git-svn-id: svn://kolibrios.org@380 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-28 10:51:05 +00:00
Sergey Semyonov (Serge)
04929cf017 1)fixed wrong exported LFB address
2)replace 0x3000 0x3004 0x3010 0x3020 whith symbolic constants


git-svn-id: svn://kolibrios.org@379 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-28 08:52:06 +00:00
Evgeny Grechnikov (Diamond)
5121a68d46 * Corrected size of display_data in calculatebackground
* Fixed bug with VRR changing videomode

git-svn-id: svn://kolibrios.org@322 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-06 14:00:27 +00:00
Mihail Semenyako (mike.dld)
d51f1259a0 Added 'C' flag to 0-th system function: don't fill working area
Modified Tinypad to use 'C' flag

git-svn-id: svn://kolibrios.org@303 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-01-30 21:54:34 +00:00
Evgeny Grechnikov (Diamond)
85aa5c3167 Final attempt to fix border drawing
git-svn-id: svn://kolibrios.org@186 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-18 11:29:50 +00:00
Evgeny Grechnikov (Diamond)
aacb4b7591 Corrected border drawing code.
git-svn-id: svn://kolibrios.org@181 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-12 10:35:04 +00:00
Evgeny Grechnikov (Diamond)
0e39a3fffe Fixed bug with border drawing
git-svn-id: svn://kolibrios.org@163 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-05 08:37:51 +00:00
Evgeny Grechnikov (Diamond)
18c3550908 File subsystem: fixed error in function 70.5 for CD
Window subsystem: now when window coordinates are changed,
                  client area is changed too

git-svn-id: svn://kolibrios.org@150 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-09-18 12:23:52 +00:00
Evgeny Grechnikov (Diamond)
7e19914ef4 Kernel: fixed work with zero-size windows
launcher, @rb: modified to use function 70

git-svn-id: svn://kolibrios.org@142 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-29 12:52:52 +00:00
Marat Zakiyanov (Mario79)
5638fe22ff 1. Optimization of the mode 320*200*256. Load on CPU is less. Small increase of speed.
2. Optimization of the mode 640*480*16. Substantial growth of speed.
3. At the expense of deleting the superfluous code from vga.inc the size of a kernel has decreased.

git-svn-id: svn://kolibrios.org@117 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-10 18:18:33 +00:00
Ivan Poddubny
3e2bc5b35f Introduced APPDATA, TASKDATA, WNDDATA, RECT, BOX structures.
git-svn-id: svn://kolibrios.org@115 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-06 10:29:45 +00:00
Mihail Semenyako (mike.dld)
9a27b206b3 Added two flags to 0th function (edx = 0xXYRRGGBB, X = DCBAb)
A - window has a caption; if Y=3, then caption scting address could be passed in
      edi, otherwise use function 71/1
  B - treat all drawing performed to be relative to window client area
  D - use gradient fill for client area
Added function 71:
  subfunction 1 - set window caption string address (in ecx)
  subfunction 2 - get window caption into buffer (not implemented yet)
Updated sysfuncr.txt, added sysfuncs.txt

git-svn-id: svn://kolibrios.org@114 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-03 19:30:32 +00:00
Ivan Poddubny
849b393cad 1. faster GUI: calculatescreen
2. fixed sysfunc 1 - put pixel which was completely broken

git-svn-id: svn://kolibrios.org@112 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-01 14:09:42 +00:00
Ivan Poddubny
82859246df Direct window activation without osloop/checkwindows, straightforward window minimizing
git-svn-id: svn://kolibrios.org@105 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-07-25 10:48:35 +00:00
Ivan Poddubny
c5b30426a8 1. a little fix for scheduler + correct comments
2. refactored window activation/ process termination/ getting active process
3. deleted dead code in checkwindows
4. eliminated almost all accesses to 0x3020+...+0xe, changed to direct process number
5. cli/sti in vesa12 and vga drivers and in calculatescreen
6. skipping dead windows in some funcs in window.inc

git-svn-id: svn://kolibrios.org@102 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-07-23 14:47:32 +00:00
Mihail Semenyako (mike.dld)
f1f3efb4ba Fix to saving window position code
git-svn-id: svn://kolibrios.org@57 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-03-11 01:15:32 +00:00
Mihail Semenyako (mike.dld)
47d7819f9a Fixes to skin drawing code, in case default.skn wasn't loaded on OS startup
Prevent creation of buttons with negative or zero width/height

git-svn-id: svn://kolibrios.org@54 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-03-04 17:44:44 +00:00
Mihail Semenyako (mike.dld)
9b4ba85ac2 Allow programs to draw negative pixels and lines
Save window bounds (not just position) before rolling up or maximizing
New functions:
  48/7 - get skin margins
  48/8 - set window skin

git-svn-id: svn://kolibrios.org@52 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-03-04 11:58:09 +00:00