Fresh IDE . Timeline
Not logged in

This repository is a mirror!

The original is located on: https://fresh.flatassembler.net/fossil/repo/fresh
If you want to follow the project, please update your remote-url

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 descendants and 50 ancestors of 95492a43df4d046f184476ad647beee591377f88

2019-06-22
12:31
Bugs and memory leaks fixed in file dialog. check-in: fc53316349 user: johnfound tags: FreshLibDev
11:34
Multiple file selection in the file dialogs. Some work on the TGrid. check-in: 01c5bd8c46 user: johnfound tags: FreshLibDev
2019-06-21
11:18
Work on different GUI components. Fixed a bug in the "create" macro from "macros/_realobjects.inc". check-in: 55a684dba7 user: johnfound tags: FreshLibDev
2019-06-19
07:59
Removed the class TCanvasScrollable as unnecessary or even harmful. TCanvasWindow remains for now as a possible fallback in some cases. check-in: d43cc0b3da user: johnfound tags: FreshLibDev
2019-06-18
07:20
Added missing file. TScrollable2 object renamed back to TScrollable. check-in: 02a4978430 user: johnfound tags: FreshLibDev
2019-06-15
14:06
Support gfRowFocus in TListView check-in: 088db5c087 user: johnfound tags: FreshLibDev
14:04
NoCanvasGUI proved to be the right way, so merged to the FreshLibDev and continue here. check-in: 4fcd8e5b96 user: johnfound tags: FreshLibDev
07:13
File dialogs separated in the file gui/file_dialogs.asm; Support for the TGrid entire row focus (gfRowFocuse flag); Leaf check-in: 5a55ba1631 user: johnfound tags: NoCanvasGUI
2019-06-11
07:27
Merged with FreshLibDev in order to get the latest FileLock interface and implementation. check-in: 9149d0f2bc user: johnfound tags: NoCanvasGUI
07:25
Work on FileDialog procedure. check-in: e1970e2db6 user: johnfound tags: NoCanvasGUI
2019-06-07
09:28
Fixed a run-away bug in SortArray. Added user defined parameter to the ptrCompareProc interface. Changed StrExtractExt to not return filenames starting with dot (the dot files in Linux). linux_dirent64 structure defined for use with sys_getdents64 syscall.

The procedure SortDirArray is deleted. Use SortArray instead with comparison procedure DirItemCompare. It still needs support for the fdsXXX flags.

ShowModal procedure fixed to properly handle the modal windows that are invisible (have no window handle) in the time of call.

Work on the TListView support for lvsDetails style with headers and subitems.

TScrollable2 fixed bug with the scrollbars slider size.

Work on the FileDialog procedure. check-in: 7491fb80c8 user: johnfound tags: NoCanvasGUI

2019-06-06
06:42
Code cleanup, bug fixes and keyboard interface (not finished) in TGrid. Work on the TListView - support for multiple subitems. check-in: 1a4bef0c86 user: johnfound tags: NoCanvasGUI
2019-06-01
21:35
Work on the GUI library. The SortArray procedure refactored. The interface to the comparison callback has been changed!

The icons for the dialogs are moved to the themes. check-in: cc88ef727c user: johnfound tags: NoCanvasGUI

2019-05-28
13:57
Work on the GUI components. check-in: 33840fc66b user: johnfound tags: NoCanvasGUI
2019-05-23
13:12
Remove obsolete classes. Some code cleanup. Some tests (TTreeView for example) will not work. Only one TScrollable2 class. check-in: 1dab0b7922 user: johnfound tags: NoCanvasGUI
08:29
Draw the partial visible cells. Generate horizontal scroll events on wheel+shift cases. check-in: 35f9cd381c user: johnfound tags: NoCanvasGUI
2019-05-22
20:37
TGrid resize columns and rows with mouse drag. check-in: 1b627e8890 user: johnfound tags: NoCanvasGUI
09:26
Remove duplicated functionality (TGrid.__SearchCellRange). check-in: 06e497cad1 user: johnfound tags: NoCanvasGUI
08:24
TGrid new HitTest implementation. Prepared for row/col drag resize. check-in: 1706122465 user: johnfound tags: NoCanvasGUI
2019-05-18
07:08
Work on the GUI controls. check-in: aad4694bcf user: johnfound tags: NoCanvasGUI
2019-05-16
21:18
Implemented TScrollable2 that has as parent TWindow instead of TCanvasWindow and can work well with all kind of controls. It draws itself directly in SelfPaint method.

Work on TGrid control. check-in: b797990264 user: johnfound tags: NoCanvasGUI

2019-05-14
09:32
Work on the TTabBar control. Process the keyboard shortcuts in a correct and OS portable way. (There are some problems how to handle the key codes and names in OS independent way.) check-in: d52325d9e0 user: johnfound tags: NoCanvasGUI
2019-05-12
16:04
Implemented TTabBar control. Fixed bugs in arrays.asm and text drawing procedures. Work in progress on the TToolbar, TTreeView and other GUI components. check-in: c361fcb7e2 user: johnfound tags: NoCanvasGUI
2019-05-11
05:54
Added .UserData parameter in TWindow. Work on TTreeView (not finished). Added TMenuItem.itemID field. It is useful for the items that don't have action or menu attached. check-in: 54fdfbbce1 user: johnfound tags: NoCanvasGUI
2019-05-09
12:49
Added userID field for the menu items. TMenu:InsertItem implemented. Better and readable menu template syntax. TButton:Menu for easy attach of menu to button. check-in: edb12bf679 user: johnfound tags: NoCanvasGUI
2019-05-07
21:38
A lot of changes as a result of activated work on Fresh v3.x

TToolbar control implemented. In very primitive state, but works somehow.

New StrNormalizePath2 function, together with the OS dependent path functions IsPathRelative and GetPrefix. They are aimed to provide OS independent way for path processing.

Fixed serious bugs in the GUI part, related to windows nested in more than 2 levels. It turned that the library was never tested with such windows before...

A lot of new functionality and correct behavior in the GUI part. Now the TAction accelerator keys are assigned through the StrToAccelerator function directly from the templates. check-in: 6639367637 user: johnfound tags: NoCanvasGUI

2019-05-03
21:00
Work on TAsmEdit, related to the text editing.

Work on TMenu - implemented menu template similar to the old CoolMenu and procedure MenuFromTemplate that creates the whole menu tree from the template.

The functions "read" and "write" removed from the pthreads import library, because in conflict with FASM interface procedures. I am not sure why these functions are there, but they are not used after all. check-in: f313647175 user: johnfound tags: NoCanvasGUI

2019-05-02
09:36
The method TAsmEdit:SplitLine implemented. check-in: 8a219674f9 user: johnfound tags: NoCanvasGUI
08:08
Undo/Redo operations work at least for delete. More tests needed of course. check-in: f2e6fc9d73 user: johnfound tags: NoCanvasGUI
2019-05-01
20:45
Not finished work on Undo/Redo. check-in: 4b75c23dcb user: johnfound tags: NoCanvasGUI
07:13
More work on deleting characters and selections. Added backspace. Added handling of the trailing spaces. check-in: 0c75b62fae user: johnfound tags: NoCanvasGUI
2019-04-30
22:05
Work on the syntax highlighter. Fixed the text rendering with a syntax highlight. check-in: 765802a720 user: johnfound tags: NoCanvasGUI
2019-04-29
07:13
Deleting characters. check-in: 22f4724e5a user: johnfound tags: NoCanvasGUI
2019-04-28
14:31
Fixed selection rectangles list creation. Fixed selection delete method. Code cleanup. check-in: b233c364d5 user: johnfound tags: NoCanvasGUI
2019-04-27
16:52
TAsmEdit refactored to the TText interface changes. check-in: 59f19b3b5c user: johnfound tags: NoCanvasGUI
2019-04-22
17:00
Merged with FreshLibDev. Some serious conflicts with the existing code are possible, especially because of TText interface has been changed! check-in: b8ab87cfc4 user: johnfound tags: NoCanvasGUI
16:34
Draw the menu selection without the icon. check-in: 06f6f3d9ee user: johnfound tags: NoCanvasGUI
2019-04-20
12:33
Process properly the resizing of the windows. check-in: 926386c601 user: johnfound tags: NoCanvasGUI
12:32
Proper theme change in some tests. check-in: a016263090 user: johnfound tags: NoCanvasGUI
2019-04-19
12:58
Text caret color. check-in: 11ee3a3d7f user: johnfound tags: NoCanvasGUI
12:58
Some work on the text caret and Linux expose events processing priority. check-in: 2d4d2404aa user: johnfound tags: NoCanvasGUI
2019-04-16
10:40
Fixed the Linux port WaitForSystemEvents procedure that caused hands sometimes (there is a message in the queue, but the procedure does not return).

The mouse.asm library refactored to use interface/body syntax.

ZeroMouseMove procedure introduced. It generates mouse move events, without moving mouse actually.

Work on the TAsmEdit control. As a result changed a little the Win32 message processing (WM_PAINT processed with higher priority).

Work on the different GUI controls in order to make them work with the new interfaces. check-in: fb9af5561c user: johnfound tags: NoCanvasGUI

2019-04-15
07:28
Work on the events processing... Leaf check-in: 28ed3fd990 user: johnfound tags: shm_pixmap
2019-04-14
19:46
A little bit more simple code. check-in: 17dd2e2d8c user: johnfound tags: NoCanvasGUI
19:05
Working demo with XshmPixmap, but it is strangely slower than with XshmImage check-in: 7643a500bf user: johnfound tags: shm_pixmap
18:24
An experimental branch for using shared memory pixmaps instead of shared memory images. check-in: f69de4ed3f user: johnfound tags: shm_pixmap
18:23
Added arguments for some functions in the import file for libX11. check-in: 65bf3ea577 user: johnfound tags: NoCanvasGUI
2019-04-10
12:50
More work on the syntax highlighter. Work on the common GUI components. check-in: cb7a0a5dba user: johnfound tags: NoCanvasGUI
2018-07-24
07:42
Work on TAsmEdit. Simple syntax highlighter working now. The colors are derived from the Tomorrow there. check-in: fbc1786a73 user: johnfound tags: NoCanvasGUI
2018-07-03
12:06
More simple API for the TAsmEdit carete and selections coordinates. check-in: 67022b13a9 user: johnfound tags: NoCanvasGUI
2018-07-01
10:29
Some work on the TAsmEdit selections. Not working though. check-in: 95492a43df user: johnfound tags: NoCanvasGUI
07:31
Work on the GUI components. check-in: c0581e08a7 user: johnfound tags: NoCanvasGUI
2018-06-30
09:43
Work on TAsmEdit and the clipboard support in Linux. check-in: f4913e7ddc user: johnfound tags: NoCanvasGUI
2017-12-19
13:25
Work on the TText structures, TAsmEdit control (undo/redo, selections, text editing methods, text navigation methods, caret, etc.), some changes to _real_objects.inc macro library in order to provide arguments hint on method execution in the IDE. Not finished and unstable yet. check-in: bc0fc9c550 user: johnfound tags: NoCanvasGUI
2017-12-05
12:06
The xor mask of the caret, moved to [GUI.clTextCaret]; check-in: f9c4765e39 user: johnfound tags: NoCanvasGUI
11:29
Implemented inverting text caret (instead of semitransparent) because it looks better. Implemented vertical caret support in TAsmEdit. check-in: 13078aacb8 user: johnfound tags: NoCanvasGUI
09:56
Added TCaret.visible field for hiding the caret without detaching.

More simple and flexible code for scrolling and rendering in TAsmEdit; Proper processing of the external scroll events. check-in: 2ce9ccfb8f user: johnfound tags: NoCanvasGUI

2017-12-04
15:34
Semi-transparent caret. Implemented changing insert-mode and the selection type from the keyboard (Insert and Ctrl+Alt+Insert keys.) UpdateCaretPos now updates the caret size as well. Also, vertical caret should be implemented there. check-in: 5b08d05798 user: johnfound tags: NoCanvasGUI
13:45
Dirty hack removed. ;) check-in: 3aeaecfe1c user: johnfound tags: NoCanvasGUI
12:55
Small fix in buffergap.asm: The function TextCompact only moves the gap, without reallocating the memory.

The procedures ScrollImageH and ScrollImageV has been moved to "graphics/draw.asm";

In TAsmEdit class, the aeoXXXXX options constants has been revised and extended. TAsmEdit.SetCaretXY method has been implemented. In order to handle the selection properly, the caret coordinates must be set only by calling this method.

The selection rendering was implemented in a proper way. Block and char selections are supported for now. The algorithm used allows other kind of selections to be easily added (for example line selection). check-in: a106042c55 user: johnfound tags: NoCanvasGUI

2017-11-30
09:11
TAsmEdit work on the proper resizing and partial text rendering. check-in: 26ad3176f8 user: johnfound tags: NoCanvasGUI
2017-11-29
12:06
Changed the way FreeType load flags are managed. This way, the programs can render the text the user prefered way. Different kind of rendering are possible as well. For example the transparent controls require mandatory grayscale or mono rendering, while the non-transparent can be rendered with subpixel accuracy. This rendering is implemented by the constants troXXXXXXX and the global variable TextRenderOptions.

BlendImage procedure fixed to work with the new TImage. Removed the outdated procedure BlendImageWrap.

Removed the .Operation argument of TWindow.SelfPaint method.

Not finished work on TAsmEdit control. check-in: 80856b2dcb user: johnfound tags: NoCanvasGUI

2017-11-21
22:35
Win32 implementation of the new text caret mechanism. The caret blinking time intervals moved to the [GUI.caretTimes]. Syncronized the flat_gui and win_gui themes. check-in: 137958b797 user: johnfound tags: NoCanvasGUI
17:51
Added constants for MsgWaitForMultiplyObjectsEx Win32 API. CreateImagePNG now accepts -1 as a length when unknown.

Implemented WaitForSystemEvents with timeout in Linux and Win32. Implemented very, very simple mechanism for text carets. It works transparently and needs minimal handling from the controls. Some (not finished) work on adaptation TMenu, TAction and other controls to the new API. TEdit now works with the new caret API. check-in: 083251e24f user: johnfound tags: NoCanvasGUI

2017-11-17
14:13
Some not finished fix of textcaret.asm; At least it does not crash. But needs some more simple and more elegant solution not based on timers. check-in: a312962919 user: johnfound tags: NoCanvasGUI
2017-11-16
20:25
A small optimization of DrawSolidRect procedure. check-in: db0f4990ec user: johnfound tags: NoCanvasGUI
20:19
Fixed bug in DrawSolidRect causing hanging of the application. check-in: 1714fae0d7 user: johnfound tags: NoCanvasGUI
2017-11-15
13:26
Removed unnecessary call of XFlush and XFlushGC. check-in: cc61b3e780 user: johnfound tags: NoCanvasGUI
10:40
Preventing set wrapW/wrapH to zero. More compact DrawImageRect procedure for Linux. check-in: 2d46744055 user: johnfound tags: NoCanvasGUI
2017-11-14
18:08
Fixed bug in Win32 GetTextBounds - not handling length of -1 normally. check-in: 1ec5c6a094 user: johnfound tags: NoCanvasGUI
12:28
Fixed small bug in the "Linux/text.asm". BlendSolidRect procedure fixed to work with orgX/Y and added to the TestGraphics.fpr; Better (smaller) background.png for this project. check-in: 24ce1940cf user: johnfound tags: NoCanvasGUI
2017-11-13
20:38
Fixed wrong background image. Fixed the Win32 DrawImageRect procedure, according to the fix in the linux version. Fixed Win32 __BlendAlphaMask procedure, used in the text drawing. The TestGraphics.fpr project now works in Linux and Windows. check-in: 201dc418ad user: johnfound tags: NoCanvasGUI
14:18
Fixed bug in DrawImageRect procedure.

Introduced procedure RectIntersect2 that returns slightly different results than RectIntersect in the cases where two rectangles does not intersect. Only one of these should remains. Need some more research.

__DrawGlyph procedure fixed to wrap properly. Only in Linux though. Need to be fixed in Windows as well. Also, the code need to be revised for possible bugs and optimizations!

options.DebugMode.ComputeFPS and options.DebugMode.ShowFPS are defined for computing the animation speed in X (Linux).

More complex test code. Works without visible artifacts. check-in: 30c9712d7d user: johnfound tags: NoCanvasGUI

2017-11-12
21:04
Correctly working SetImageWrap procedure. But suboptimal solution of the procedure ZeroOrgImage that is used in SetImageWrap. But as long as this operation is needed only on image resize, it is not so important actually. check-in: 7a45e0a480 user: johnfound tags: NoCanvasGUI
07:58
Some implementation of the SetImageWrap procedure. It has problems when the wrapW/H becomes less than orgX/Y; And the algorithm is pretty complex. Need some general algorithmic fix. check-in: 2d85be0cb6 user: johnfound tags: NoCanvasGUI
2017-11-08
13:32
Work on the proper image wrapping. Now there is a problem with the repainting when the image wrapX/wrapY changes and the orgX/orgY are not 0; On such operation, some tearing in the middle of the image appears, hence need to be repainted - by copying the teared off parts where they belongs. (the _screen image wrapX/Y) changes and the orgX/Y are not 0; check-in: fe507f8504 user: johnfound tags: NoCanvasGUI
2017-11-07
12:27
Fixed bug in random.asm (Win32 and Linux) causing resource leaks and defered crash.

Working on the 0-move scroll for TImage (by moving the image origin) - DrawImageRect funtions for Windows and Linux are adapted for the new standard.

Added test project (TestGraphics) for this feature.

Added debugging FPS display (see options.DebugMode.ShowFPS).

Work on the remaining aspects of the GUI engine. check-in: 993829fb8c user: johnfound tags: NoCanvasGUI

2017-10-26
16:39
In general, a lot of work on the new GUI concept. Not finished. check-in: 4e013cc286 user: johnfound tags: NoCanvasGUI
2017-09-09
19:42
Fixed the TButton rendering bug and some little misbehavior on keyboard events. check-in: 071b59fa8c user: johnfound tags: NoCanvasGUI
2017-08-27
18:45
Minor fix in TButton and adapting TProgress to the new API. check-in: c5df17b099 user: johnfound tags: NoCanvasGUI
2017-08-26
14:58
Work on the TButton proper rendering. check-in: b55198191b user: johnfound tags: NoCanvasGUI
2017-08-21
02:51
The next code refactoring for the GUI library. The idea is to not refresh the controls all the time, but only when needed. In addition, the drawing methods are now not fixed, but can vary for the different classes, using only common interface: TWindow:SelfPaint method; check-in: 215e9a11c6 user: johnfound tags: NoCanvasGUI
2017-06-02
13:56
Almost working, at least with TForm and TButton components. check-in: 7f2c82fcc6 user: johnfound tags: NoCanvasGUI
12:29
An attempt to increase the performance of the GUI libraries, by drawing directly on the screen images when possible. At least this approach is more flexible. Not working in this checkin! check-in: 7a655a26e5 user: johnfound tags: NoCanvasGUI
2017-05-30
05:29
Added constants in sqlite equates. Simplified markdown parser (some projects may need recompilation). check-in: d91b182aa9 user: johnfound tags: FreshLibDev
2017-05-15
07:47
Major change in the markdown parser. Changed the interface of the TranslateMarkdown procedure and renamed to TranslateMarkdown2 in order to prevet compilation of the old sources with bad arguments. check-in: 23e137dab2 user: johnfound tags: FreshLibDev
2017-05-11
08:33
Generally here are the changes made during the work on AsmBB and some work on the GUI library.

Better error check in SocketSendall. Added new function "FileTruncateTo" and implemented for Linux and Win32. Work on the TScrollable class and adapting the TTreeView and TAsmEdit for it. check-in: 3e024fbdf2 user: johnfound tags: FreshLibDev

2017-04-20
05:58
Work on TAsmEdit; check-in: 6386df457c user: johnfound tags: FreshLibDev
2017-04-18
14:11
Work on TScrollable and TAsmEdit. check-in: b15c441b4d user: johnfound tags: FreshLibDev
2017-04-16
23:27
Work on TScrollable; Fixed bug in _realobjects.inc; check-in: e4d69cd129 user: johnfound tags: FreshLibDev
16:45
Work on TScrollable class. Now the scrollers can be dragged by the mouse; check-in: d335cd1b07 user: johnfound tags: FreshLibDev
2017-04-14
08:05
Added missing KolibriOS file. check-in: 9e39486f06 user: johnfound tags: FreshLibDev
2017-04-13
15:21
Removed obsolete files. check-in: d79c120dff user: johnfound tags: FreshLibDev
15:20
Work on TAsmEdit; check-in: 4012ccb660 user: johnfound tags: FreshLibDev
15:19
Fixed small bug in uconfig.asm; The procedure _BlendPixel has been moved to the OS independent graphics/images.asm; The graphics/draw.asm procedure now is fully OS independent; check-in: bb87024e2e user: johnfound tags: FreshLibDev
15:15
Added SocketShutDown function in network.asm; Implemented for Win32 and Linux; FileExists function has been implemented as OS dependent for Linux and Win32 in order to make it much faster. Now it uses sys_newstat and GetFileAttributes insead of open attempt; check-in: f98c983f15 user: johnfound tags: FreshLibDev
2017-02-08
18:42
Work on different aspects of multithread applications, timers, event handling, etc. Implemented new debug macro: macro OutputCallStack depth {}; check-in: 43ff3d49ae user: johnfound tags: FreshLibDev
2017-02-07
21:17
Working on the GUI multithread support. check-in: 75bcc2e8e9 user: johnfound tags: FreshLibDev
2017-02-05
22:22
Added CreateDirectory function to the file functions and implemented for Linux and Win32. Fixed a bug in the Linux implementation of SocketAccept. Fixed major bug in the Linux implementation of WaitForMutex function. Added some locks in order to prevent flickering in multithread GUI applications. Maybe some of them should be removed later. check-in: 2a1f7f56ad user: johnfound tags: FreshLibDev
2017-01-23
09:41
Fixed small bug in TProgressbar.asm causing the progress bar to not indicate properly on big values. check-in: 99a179cc7b user: johnfound tags: FreshLibDev
06:42
Fixed bug in deflate.asm not handling properly uncompressed blocks. check-in: 80906c1778 user: johnfound tags: FreshLibDev