1
1
Fork 0
mirror of https://github.com/FellippeHeitor/InForm.git synced 2025-01-15 11:59:34 +00:00
Commit graph

337 commits

Author SHA1 Message Date
FellippeHeitor
4d80507f00 Replaces all instances of _PRINTSTRING with __UI_PrintString (at last). 2018-05-16 11:19:37 -03:00
FellippeHeitor
c6e37ddddf Bypasses SetFocus method if the passed control already has focus. 2018-05-16 10:21:11 -03:00
FellippeHeitor
80cc69d1f7 Resizes the Open dialog (UiEditor). 2018-05-15 11:31:39 -03:00
FellippeHeitor
3c51f7716f Variable section reorganized (UiEditor). 2018-05-15 10:56:40 -03:00
FellippeHeitor
ab80f49f25 Resets UiEditorPreview icon when a new form is created. Fixes #46. 2018-05-14 22:32:34 -03:00
FellippeHeitor
69e00e298d Uses the loaded font for initial messages, if any. 2018-05-14 11:34:44 -03:00
FellippeHeitor
e556837149 Triggers __UI_ValueChanged for Lists and Toggle controls when...
...their .Value property is changed programatically too.
2018-05-14 11:13:10 -03:00
FellippeHeitor
20e8185a35 Allows DropdownLists to have .Value = 0. 2018-05-14 00:36:43 -03:00
FellippeHeitor
8bc607af44 Tweaks UiEditor handling of List/DropdownList controls. 2018-05-14 00:23:36 -03:00
FellippeHeitor
68a3014268 Changes paste routine behavior.
- When you paste controls without a selection, the pasted controls will be placed where they were originally located. If a control is selected, the newly pasted controls will be slightly offset when pasted.
2018-05-13 22:51:07 -03:00
FellippeHeitor
c713f3445e Minor tweak to Edit menu in UiEditor. 2018-05-13 22:07:28 -03:00
FellippeHeitor
b4d3af272a Tooltips had been misplaced. That's fixed with this commit. 2018-05-13 21:42:12 -03:00
FellippeHeitor
b755a52167 Improves "Set as default button" to allow "unsetting" it. 2018-05-13 21:33:05 -03:00
FellippeHeitor
2f3bb59b8d Resets TextBox template when Mask() changes are detected. 2018-05-13 20:08:57 -03:00
FellippeHeitor
465226c53b Resets mask() when the .Max property is passed. 2018-05-13 19:56:51 -03:00
FellippeHeitor
1833c42066 Resets .Max property for TextBoxes when a mask is applied. 2018-05-13 19:50:16 -03:00
FellippeHeitor
51fa4e5d4c Blinks status bar when warning to save edits. 2018-05-13 19:38:16 -03:00
FellippeHeitor
52878db031 Simplifies enabling/disabling EditMenuAllowMinMax (UiEditor). Also:
- Fixes a bug that wouldn't allow copy/paste of .Max property.
- Makes NumericTextBoxes respect .Min/.Max properties when .NumericOnly changes between True/__UI_NumericWithBounds.
- Sets .Min/.Max to -32768/32767 (INTEGER range) at creation.
2018-05-13 19:07:39 -03:00
FellippeHeitor
44d36711bd Simplifies passing OriginalImageHeight and OriginalImageWidth to Editor. 2018-05-13 13:36:08 -03:00
FellippeHeitor
99ac4041bb Tweaks SetFocus to avoid setting focus to a disabled control. 2018-05-13 12:34:15 -03:00
FellippeHeitor
d5fb247c84 Adds SetFocus method. Closes #44. 2018-05-13 11:08:52 -03:00
FellippeHeitor
03c79f610f Adds numeric text boxes to UiEditor 2018-05-12 02:33:22 -03:00
FellippeHeitor
67058fb102 Adds a few icons to Align menu items. More to come. 2018-05-11 11:09:15 -03:00
FellippeHeitor
f0899272fe Menu items can now have customized multi-state icons.
If a menu item has a HelperCanvas of 16px in height and 16, 32 or 48 pixels in width, InForm considers that these are for Normal, Hoevered and Disabled states and uses the sprites accordingly.
2018-05-11 11:08:50 -03:00
FellippeHeitor
74fc7e697c Fixes #42: restore Mask field property box and improves behavior. 2018-05-10 23:08:44 -03:00
FellippeHeitor
15793320a3 #41: Transfers Align routines from InForm.ui to UiEditorPreview.bas 2018-05-10 22:30:37 -03:00
FellippeHeitor
51a745ec79 Fixes #41: Align commands not being sent to the preview. 2018-05-10 21:58:01 -03:00
FellippeHeitor
241c01036c Fixes a few more issues regarding hotkeys. 2018-05-10 11:35:01 -03:00
FellippeHeitor
1a1cfe02f0 Fixes parsing of Captions for &hotkey markers. Also:
Allows \& to serve as an escape character for & to bypass hotkey scanning.
2018-05-10 11:11:14 -03:00
FellippeHeitor
a1eaae561d Improves clipboard handling for controls. 2018-05-10 02:13:10 -03:00
FellippeHeitor
32ad8e5abb Fixes an issue that would hang the preview at paste.
Colors needed CHR$(0) in their encoding and the back and forth from CHR$(0) to CHR$(250) was corrupting the copied data. That's solved now.
2018-05-10 00:22:51 -03:00
FellippeHeitor
8c302ebd6f Adds clipboard operations to UiEditor's Edit menu. 2018-05-09 11:14:52 -03:00
FellippeHeitor
5ccac21f9c Adds "Cut" to preview menu. 2018-05-08 11:34:23 -03:00
FellippeHeitor
115d67365a Reworked clipboard operations for controls in UiEditor.
The previous hacky approach has been completely scraped/reworked into true copy/paste of controls.
2018-05-08 11:24:24 -03:00
FellippeHeitor
f6a98ca9a8 Adds AutoSize for some controls when font size changes. 2018-05-07 11:21:01 -03:00
FellippeHeitor
325d7024ba Remove INT() for TrackBar values in UiEditor.
Trackbar controls only deal with whole numbers now after all.
2018-05-07 11:16:58 -03:00
FellippeHeitor
3969ff9638 Adds visual clues for MinInterval and adjusts those for Interval. Also:
- Makes TrackBar values/intervals always whole numbers.
2018-05-06 21:39:48 -03:00
FellippeHeitor
a2c4aae342 Adjusts the color of the status bar. 2018-05-06 17:28:12 -03:00
FellippeHeitor
3bbb7ce618 Tweaked font spacing for builtin fonts 8 and 16. 2018-05-06 12:24:40 -03:00
FellippeHeitor
c1a05509a9 Declutters font list for new forms while still trying to load them all. 2018-05-06 10:44:13 -03:00
FellippeHeitor
dcb2b1ac59 Adds a status bar to UiEditor. Also:
- Prevents user from leaving property fields with unsaved changes.
2018-05-06 02:36:23 -03:00
FellippeHeitor
3a986ef376 New __UI_KeepFocus property:
When set to True in a __UI_FocusOut event, prevents the current control from losing focus.
2018-05-06 02:35:29 -03:00
FellippeHeitor
3a8c514ec5 Fixes bug that prevented a .NumericOnly textbox from having a "-" added when its contents were selected. 2018-05-06 01:48:03 -03:00
FellippeHeitor
76cb1fecb4 Fixes tooltips in UiEditor. 2018-05-06 01:32:46 -03:00
FellippeHeitor
189e813aa0 Simplifies font loading.
- It's no longer necessary to specify font parameters.
- Font file and size are now separated with a comma in the editor.
2018-05-06 00:54:43 -03:00
FellippeHeitor
6a508f7f61 Rewording of Align menu items for single/multiple control selection. 2018-05-06 00:16:38 -03:00
FellippeHeitor
d4f5218716 Auto-size for labels tweaked (taller box). 2018-05-05 23:47:37 -03:00
FellippeHeitor
041636dfcf Adds click-to-copy functionality for color values (color preview). 2018-05-05 23:13:45 -03:00
FellippeHeitor
26ebc1b480 Make borders thicker for RGB text boxes. 2018-05-05 23:13:29 -03:00
FellippeHeitor
3a0ab9cd7e Show HEX values in color preview box. 2018-05-05 22:49:49 -03:00
FellippeHeitor
82c156900c Improved color preview. Fixes #17. 2018-05-05 22:31:41 -03:00
FellippeHeitor
55ebaafc16 Extends __UI_ValueChanged event to more control types. Also:
- Adds basic description of some events' functionality to exported code.
2018-05-05 20:45:38 -03:00
FellippeHeitor
54d4cff0f4 Remove code to handle Alt+F4 in Windows as QB64 does that itself now. 2018-05-05 19:27:16 -03:00
FellippeHeitor
88be63ff01 Fixes behavior of ESC key for property editing (restore previous valid). 2018-05-05 19:12:08 -03:00
FellippeHeitor
b57af610c1 Make active input box more visible with a thicker border. Also:
- Fixes some controls' z-ordering.
2018-05-05 17:20:33 -03:00
FellippeHeitor
e25bdb9f78 New indicator of accepted/rejected property values.
An input box will be colored green when the value sent is accepted by the preview or red when the value is rejected.
2018-05-05 16:21:05 -03:00
FellippeHeitor
0aacdfb6b8 Set ToggleSwitch value to true if anything non-zero is passed. 2018-05-05 15:04:47 -03:00
FellippeHeitor
f111c885c4 Refined behavior of Open dialog. Fixes #38. 2018-05-05 01:55:19 -03:00
FellippeHeitor
d6665d39b3 #37: Fixes icons not being shown in the preview at load. 2018-05-05 01:12:09 -03:00
FellippeHeitor
fffb9c34f6 Adds .MinInterval to editor for TrackBar controls. Fixes #39. 2018-05-05 00:53:37 -03:00
FellippeHeitor
17b98f8f6d Allows up/down arrow keys to increase/decrease RGB values (UiEditor). 2018-05-04 00:13:22 -03:00
FellippeHeitor
fa586cbdbd New .MinInterval property for TrackBar controls. Also:
- Improved keyboard interaction with TrackBar controls (arrow keys+ctrl for .MinInterval, just arrow keys for .Interval increments).
- Improved copy/paste of text from/to textbox controls.
2018-05-04 00:12:56 -03:00
FellippeHeitor
f20c5df708 ENTER to confirm ESC to cancel property edits. Minor overall tweks. 2018-05-03 11:07:17 -03:00
FellippeHeitor
7ceedacef1 Improved exchange of PictureBox original image dimensions. 2018-05-03 11:06:06 -03:00
FellippeHeitor
28a3ee262b Tweaks to control positions in the Editor. 2018-05-03 11:05:35 -03:00
FellippeHeitor
be414e9d69 Major interface overhaul.
Properties. Properties everywhere.
2018-05-02 11:23:49 -03:00
FellippeHeitor
51e9fd657a .NumericOnly property for TextBox controls
Values are True (Same as __UI_NumericWithoutBounds) or __UI_NumericWithBounds, which allows .Min and .Max to limit the input value.
2018-05-02 11:23:00 -03:00
FellippeHeitor
9edd7ddc8b #29 Adds "Restore image dimensions" to edit menu (UiEditor). 2018-05-01 00:25:50 -03:00
FellippeHeitor
0795451a9d Adds "Set as default button" to Edit menu (UiEditor). 2018-04-30 23:34:02 -03:00
FellippeHeitor
505feb4cdc Closes editor menus when preview is manipulated. 2018-04-30 23:33:32 -03:00
FellippeHeitor
c0e3988f10 Removes unused code for form grid. 2018-04-30 23:32:58 -03:00
Fellippe Heitor
2c62fb1150
Fixes a regression introduced with 27ae309
Controls without the anchor properties filled simply wouldn't show after the last commit. This undoes the changes.
2018-04-30 16:03:54 -03:00
FellippeHeitor
27ae3099fa Anchor test 1.
Defining .AnchorX sets how far from the right edge a control should be placed. Setting .AnchorY sets how far from the bottom edge a control should be placed.
2018-04-30 11:17:38 -03:00
FellippeHeitor
83eb06969e Limits input processing for Lists when there are items in the control. 2018-04-22 18:48:23 -03:00
FellippeHeitor
b9f23d6d58 #36: Masked input fixed to accept only numbers. 2018-04-22 18:34:43 -03:00
FellippeHeitor
7360027478 #30: Paste into textbox controls with Mask() set now works properly. 2018-04-22 18:22:25 -03:00
FellippeHeitor
4417639fe1 Preselects most common property when creating a new control. 2018-04-21 22:04:25 -03:00
FellippeHeitor
81ec00284b Auto size for labels gets extended to control height as well. 2018-04-21 20:33:03 -03:00
FellippeHeitor
a167efbf75 #24: Auto-size for labels.
Recently added label controls will resize automatically provided their height remains unedited and their wordwrap property remains false.
2018-04-21 20:21:00 -03:00
FellippeHeitor
697d4636ab Fixes regression introduced concerning the saving of Stretch property. 2018-04-21 19:56:01 -03:00
FellippeHeitor
511843e737 #32: Properly save menu items images. 2018-04-21 19:48:50 -03:00
FellippeHeitor
70f4ca8672 Remove call to _ICON after $EXEICON as that's redundant in newest QB64. 2018-04-21 19:43:36 -03:00
FellippeHeitor
c78f28f917 Set initial Align/VAlign properties to Center/Middle for PictureBoxes. 2018-04-21 19:38:47 -03:00
FellippeHeitor
6bbde9644b Keep PictureBox control in place when restoring dimensions. 2018-04-21 19:38:10 -03:00
FellippeHeitor
6af35abdcd Show "Hold ctrl to bypass snapping" only if currently snapped. 2018-04-21 19:37:52 -03:00
FellippeHeitor
5670095dea #31: Stretch property for picturebox controls now get properly saved. 2018-04-21 19:37:19 -03:00
FellippeHeitor
f550e85ffa #33: Max property for lists don't need to be saved.
They are automatically calculated at form load with every AddItem call.
2018-04-21 17:58:47 -03:00
FellippeHeitor
0b0436be45 Sets default fonts for internal editor preview menus. 2018-04-21 14:59:53 -03:00
FellippeHeitor
10adf6c84d Refined alignment of controls being resized by corner handles. 2018-04-21 03:46:40 -03:00
FellippeHeitor
4c40b47d86 'Resize around center' (with shift) implemented for corner handles. 2018-04-20 11:45:51 -03:00
FellippeHeitor
57c32d07ea Snap controls to middle and center of form. 2018-04-20 02:37:35 -03:00
FellippeHeitor
b59aee9a1b Snap to form. Addresses #25 2018-04-20 02:09:54 -03:00
FellippeHeitor
9525de101f Snap by proximity implemented. Addresses #25 partially.
Controls have a magnetic snap between them which will keep them separated by a preset amount of pixels if the user wishes to (Ctrl can be used to bypass snapping as usual).

Also:
- Resize handles now get out of the way while moving a control.
- vWATCH64 bypass directives added to the library so users can still debug their programs using vWATCH64 without having to go through InForm's code.
2018-04-18 10:59:14 -03:00
FellippeHeitor
f7ce568ded Converts CONSTs into FUNCTIONs, so they get colorized in QB64 1.2. Also:
- MessageBox method now accepts \n as a new line character.
- Variable rewording in xp.uitheme so it doesn't conflict with user variables.
2018-04-16 09:07:56 -03:00
FellippeHeitor
c1cd5667ca Remove binaries while beta 7 is in development. 2018-04-02 01:39:47 -03:00
FellippeHeitor
95f4331d95 #27: Allows .ICO files to be loaded into PictureBox controls. Also:
Moves IconPreview& from UiEditorPreview into InForm.ui, making the method available globally for the library.
2018-04-01 22:19:43 -03:00
FellippeHeitor
b2906a5671 Adds beta 6 binaries. 2018-03-26 11:18:11 -03:00
FellippeHeitor
9f73c43c8a Remove debug code. 2018-03-26 11:16:50 -03:00
FellippeHeitor
ee6520f5ac #15: Allows setting multiple fonts from the editor.
Alternative fonts could already be set manually in the .frm file by specifying multiple possible font files separated by a question mark (as in "arial.ttf?cour.ttf?segoui.ttf**18"); Attempting to do the same in the editor failed before this commit.
2018-03-26 11:13:01 -03:00
FellippeHeitor
6de8e1e53a Fix color tracker giving non-integer values. 2018-03-23 23:10:34 -03:00
FellippeHeitor
e108d413ad Fix ENTER key becoming stuck while activating buttons. 2018-03-23 23:10:04 -03:00
FellippeHeitor
9d28432c61 Hide QB64's compilation window when compiling the preview component. 2018-03-23 21:51:33 -03:00
FellippeHeitor
4d7ba91d8e #22: Forms are saved to their original path when loaded from disk. 2018-03-23 21:51:14 -03:00
FellippeHeitor
6685ed5e14 Minor rewording in editor's form. 2018-03-23 21:49:47 -03:00
FellippeHeitor
831682ecae Picture buttons get a slight offset to the image's position at click. 2018-03-18 16:16:16 -03:00
FellippeHeitor
13c75a56c7 Reset IsCreating flag to allow form resizes to register. 2018-03-17 21:44:59 -03:00
FellippeHeitor
67a7768c50 New empty form settings. 2018-03-17 21:44:37 -03:00
FellippeHeitor
e8f960bc93 Sets default fonts for InForm's editor (cross-platform). 2018-03-17 21:43:50 -03:00
FellippeHeitor
ee4bef7db8 #21: Attempting to close the preview triggers File menu->New. 2018-03-17 21:41:48 -03:00
FellippeHeitor
3f570d0ada Adds png version of InForm's icon to InForm/resources 2018-03-17 21:40:52 -03:00
FellippeHeitor
f6f26625c0 Reworked save routine: only .bas and .frm files are now output. 2018-03-17 03:06:10 -03:00
FellippeHeitor
a174f67334 Improved detection of changes by form resizing. 2018-03-17 00:08:12 -03:00
FellippeHeitor
417ab5edf2 Remove binaries from development build. 2018-03-16 08:41:21 -03:00
FellippeHeitor
88ed144a66 #11: Unedited forms no longer triger the "save" prompt. 2018-03-15 13:49:15 -03:00
FellippeHeitor
3c37396428 Properly save/read __UI_DefaultButton to/from .frm and .frmbin files. 2018-03-12 11:16:21 -03:00
FellippeHeitor
d9f7e7e416 #12: New SetFrameRate method to increase the default 30FPS rate.
Intended usage is at __UI_BeforeInit event for applications that require higher framerates like applications that use PictureBox controls for drawing.
2018-03-12 10:03:02 -03:00
FellippeHeitor
54cf8e368c #10: Allows setting the default button in a form at design time.
Right-clicking a button now offers the option to "Set as default button".
2018-03-11 21:37:38 -03:00
FellippeHeitor
6433c9f689 Issue #7: Forms can be resized freely while in design mode. 2018-03-10 02:12:42 -03:00
FellippeHeitor
c638f1611f New "Restore image dimensions" option. Issue #6
Binaries updated.
2018-03-09 23:38:21 -03:00
FellippeHeitor
e97357c044 New Redraw property for controls to trigger individual redraws when =True 2018-03-09 23:37:04 -03:00
FellippeHeitor
8bc83f8c41 List of QB64 keywords updated. 2018-03-09 22:37:25 -03:00
Fellippe Heitor
3d5956f13d
Load images when importing .frm files
Addresses issue #5.
2018-02-21 13:51:37 -03:00
FellippeHeitor
9b140307fa Make Arial default in macOS, if available in the default location.
Updated binaries too.
2018-02-09 12:13:07 -02:00
FellippeHeitor
998e273325 Prevent TrackBar controls from going below .Min and beyond .Max. 2018-01-24 00:32:40 -02:00
FellippeHeitor
389da40004 Bump development version to Beta 6. 2018-01-23 23:03:46 -02:00
FellippeHeitor
106858f4a2 Improved support for ToggleSwitch control. 2018-01-23 23:02:07 -02:00
FellippeHeitor
4185cb9fb6 Labels to have their VAlign property set to __UI_Top at creation. 2018-01-13 19:10:57 -02:00
FellippeHeitor
d9adeb826a Beta 5.
- New: load .frm files for editing.
  Up until beta 4 only .frmbin files could be loaded back into the Editor after creation. With this update, you can import .frm files with your manual customizations and continue editing it with the WYSIWYG editor. Formatting rules are strict and even capitalization and spacing must be maintained as originally output by InForm (a=true is not the same as a = True, for instance and will be ignored).
2018-01-11 02:25:52 -02:00
FellippeHeitor
fee6be21ee Reorders font selection for UiEditor. 2018-01-09 20:17:01 -02:00
FellippeHeitor
a1231b4467 Updates Windows binaries. 2018-01-09 19:29:38 -02:00
FellippeHeitor
cb6dd5f30e Adds minor change before adding items to a list (removes chr$(13)). Also:
- Reenables error handler; end-users can have their own error handling routines but it should be reenabled with ON ERROR prior to every block that requires it, as InForm itself will enable its own with every internal loop.
2018-01-09 19:29:24 -02:00
FellippeHeitor
56caf2b4a1 Adds vbdos2inform - utility to convert .FRM files from VBDOS 1.00. 2017-12-26 15:55:19 -02:00
FellippeHeitor
74ef430673 Fixes some regressions from previous commit. Also:
- Add missing variable declarations.
- Rename __ExpandControlDrawOrder to match __UI_ standard
- Update binaries.
2017-11-08 12:31:41 -02:00
Oscar Garrett
11945ad33c Head ape patch 794 (#4)
Adds an array, ControlDrawOrder, synced with calls of _NewControl() but otherwise mirroring Control; also these methods __ExpandControlDrawOrder, GetControlDrawOrder&
2017-11-08 11:49:24 -02:00
FellippeHeitor
290f61dd3c Allows multiple alternative fonts to be specified as "font1?font2?...". 2017-11-03 09:36:33 -02:00
FellippeHeitor
96583790a8 Minor fixes and variable renaming. 2017-07-30 15:10:45 -03:00
FellippeHeitor
13c01c3045 New event: __UI_FormResized. Also:
- Fixed single-line tooltip width issues;
2017-07-02 23:06:12 -03:00
FellippeHeitor
5cd8f67ce9 Fix xp.uitheme's nondeclared variables. 2017-06-27 00:06:33 -03:00
FellippeHeitor
cab9f5b131 Initial development of ToggleSwitch control. 2017-06-08 11:45:45 -03:00
FellippeHeitor
7f065fb239 Show "Starting..." for projects with too many controls. 2017-06-05 02:55:37 -03:00
FellippeHeitor
fbebf10922 Minor data type fix. 2017-06-05 01:48:14 -03:00
FellippeHeitor
34bf8784da Fix tooltip width issue. 2017-06-05 01:45:02 -03:00
FellippeHeitor
741e1ac5bf Update source to indicate "Beta 3". 2017-05-05 22:16:54 -03:00
FellippeHeitor
3b5054ed1c Fix a bug that left newly created controls unnamed. Also:
- Fix a bug when creating a new control past the last REDIM of helper arrays.
2017-05-05 22:13:44 -03:00
FellippeHeitor
72482dfb75 Use Windows's mouse button swap setting. Also:
- Option to save only changes to .frm/.frmbin files, leavin the .bas alone (backup copies still get saved).
2017-05-01 21:02:56 -03:00
FellippeHeitor
85c9f97383 New PictureBox methods: BeginDraw and EndDraw. Also:
- Events __UI_TextChanged and __UI_ValueChanged are now also triggered if changes are detected while the display routines are run.
- Minor fixes to ToolTip display routine.
- New TrackBar behavior allows for negative ranges.
- Exposes new __UI_MAP function (borrowed from p5.js).
- Experimental support for multiline textboxes (not yet accessible via the editor).
2017-03-21 22:53:46 -03:00
FellippeHeitor
5a666b0eaf Rewritten Tooltip detection routine.
Thanks to Ron-Burr for reporting.
2017-02-19 12:01:04 -03:00
FellippeHeitor
1376bfc50a Add 'snap to edges' when multiple controls are dragged together. Also:
- Fix dragging controls inside frames
- Change beta version to Beta 2
2017-01-30 20:58:05 -02:00
Fellippe Heitor
2939398180 Masked input implemented. 2017-01-13 09:53:11 -02:00
FellippeHeitor
122f243c6e Preliminary MaskedInput support. 2017-01-12 11:02:31 -02:00
FellippeHeitor
d97960c063 Fix a bug that would save CHR$(34) as a literal in captions. 2017-01-08 19:57:47 -02:00
FellippeHeitor
845afd92ac Fix a bug that crashed a program without focus-enabled controls + TAB. 2017-01-08 03:00:08 -02:00
FellippeHeitor
e94cda2a11 Fix "CopyOfCopyOf..." control naming issue when copying/pasting. Also:
- Bypass display of position/size panel when the selected control is a menubar/menuitem.
2017-01-08 01:44:53 -02:00
FellippeHeitor
109d822c6e TextBoxes can now have a max length set (.Max property). Also:
- Size and position indicators are now placed on top of other overlay graphics, as well as they are shown at the first selected control of a group or dynamically when other selected controls as hovered.

Fix:
- Forms were being created with Width = 0 and Length = 0 which was causing crashes.
- When loading a form from disk some errors were being triggered while trying to _PUTIMAGE invalid canvas handles.
- Freeing fonts when loading a form from disk was causing issues.
- PasswordMask was buggy with _FONT 8 and _FONT 16.
2017-01-07 18:57:45 -02:00
FellippeHeitor
e897752ab8 - "Snap to edges" makes it easy to align controls on the preview. Also:
- Choice of code page encoding from Edit menu (CP-437 default or Windows-1252).
(Conversion to Unicode courtesy of Luke Ceddia.)
- Added minimum error handler for internal methods.
- Show size and position indicator next to selected controls.
- Improved selection rectangle's algorithm.

Fixes:
- Fix display of shift+arrow key resize not updating immediately.
- Fix text selection in single-line textboxes (last character couldn't be selected)
- Fix to SetFont method.
- Fix to __UI_DestroyControl trying to free a font that's in use.
2017-01-06 16:55:12 -02:00
FellippeHeitor
76841b8c32 PictureBox now takes Align and VAlign property. 2016-12-30 20:02:44 -02:00
FellippeHeitor
53ac940ba9 Fix an issue when loading external image files with relative paths. 2016-12-30 13:33:37 -02:00
FellippeHeitor
4f9b902aa0 Fix a bug in the launch of the preview component for Windows systems. 2016-12-28 12:51:36 -02:00
FellippeHeitor
e1c1ba703f Update binaries. 2016-12-27 11:45:06 -02:00
FellippeHeitor
6232e3938b Properly set the Editor's font in macOS/Linux. Also:
- Make "Keep attached" setting unavailable if not in Windows.
2016-12-27 01:57:13 -02:00
FellippeHeitor
09a0fda4a1 Restructure: Keep data files inside InForm subfolder. Also:
Unclutter QB64's main folder, keeping only falcon.h and UiEditor.exe.

- Move UiEditorPreview binary to InForm subfolder as well.
- Minor bug fixes to Open dialog (UiEditor).
2016-12-27 01:40:22 -02:00
FellippeHeitor
dc95038bd7 Shift+Resize will resize around the center (top, left, right and bottom). 2016-12-24 00:38:06 -02:00
FellippeHeitor
c7516a78f6 Fix align centers horizontally/vertically. 2016-12-23 22:03:29 -02:00
FellippeHeitor
c2f6073b62 Keyboard edits (including copy/paste) also save an undo image now. 2016-12-23 12:53:53 -02:00
FellippeHeitor
bd497e730e Create an InForm.ini file with Editor settings. 2016-12-23 12:39:04 -02:00
FellippeHeitor
118d720f94 Fix an issue related to the icon property (forms).
An invalid icon file was allowed but the property couldn't be cleared. That's fixed now.
2016-12-23 11:58:44 -02:00
FellippeHeitor
2d87a35d72 Backup existing files at save time. 2016-12-22 17:54:16 -02:00
FellippeHeitor
dafa3e8e10 SetCaption now takes an ID instead of a control name. 2016-12-22 09:46:51 -02:00
FellippeHeitor
47780c0789 TextBox's PasswordField property is now accessible. Also:
- Switch the Back Style property from a listbox to a checkbox.
- Fix incorrect saving of Text property for text fields.
2016-12-20 21:21:08 -02:00
FellippeHeitor
366c6f6ee5 Properly set values for CheckBoxes, Radio Buttons and Menu Items. 2016-12-20 20:16:33 -02:00
FellippeHeitor
2ac3bf1e3b Fix minor undo bug.
Pictureboxes were being restored with HasBorder active even when this property was not set.
2016-12-20 19:37:55 -02:00
FellippeHeitor
8599933440 Ctrl+left/right arrow keys to jump to word beginnings. 2016-12-20 18:58:05 -02:00
FellippeHeitor
54644fd8c0 Double-clicking the text on textboxes will select words, not characters. 2016-12-20 15:32:38 -02:00
FellippeHeitor
71032ce487 Restore "auto reopen preview window" behavior that was lost. Also:
- Make detection of edits to Property textbox (editor) more accurate.
2016-12-20 05:08:55 -02:00
FellippeHeitor
50a82c7958 Make the cursor blink again in textboxes. Also:
- Adjust PropertyValue control's width to show ok/no/wait indicators.
2016-12-20 02:31:59 -02:00
FellippeHeitor
820723e979 Fix the code for selecting text in a single-line textbox with the mouse. 2016-12-20 00:32:20 -02:00
FellippeHeitor
41ec821a75 Clipboard actions to trigger TextChanged event. 2016-12-19 22:27:05 -02:00
FellippeHeitor
e548322aaf Restructure. 2016-12-18 10:01:34 -02:00
FellippeHeitor
a43283f897 Restructure. 2016-12-18 04:24:47 -02:00
FellippeHeitor
04a8009583 Restructure. 2016-12-18 04:19:46 -02:00
FellippeHeitor
abd7cf1ded Restructure. 2016-12-17 22:05:37 -02:00
FellippeHeitor
5340cf063c Restructure. 2016-12-17 21:46:33 -02:00
FellippeHeitor
d9fc27385c New icon. Also:
- Default Editor font in Linux set to NotoMono (included).
2016-12-16 11:11:50 -02:00
FellippeHeitor
2053818e30 Embed editor images in code. Also:
- Set proper focus when Open and Z-Ordering panels are shown.
- Typing on the File Name textbox (open panel) searches for items in the File list.
2016-12-16 11:02:49 -02:00
FellippeHeitor
b9bebbee59 Overall: Replaces QB64's _PRINTSTRING with *uprint* aka falcon.h. Also:
- Adds padding (left/right) to labels.
- Adds multiline support for textboxes.
- Improves wordwrapping for labels - bypasses the function if the same text passed has already been processed for the same width and _font conditions.
- Restores internal textfield contextual menu.
- Textfield contextual menu limits options based on clipboard/selection status.
- Creates a new helpercanvas automatically upon creating a new picturebox control.
- New ReplaceText function which enables \n for adding items to a listbox at design time.

UiEditor.bas:
- Indicator on textbox shows if current input value has been accepted by the Preview renderer.
- Improves saving of nested controls.
- New "icon" property for the main form.

UiEditorPreview.bas:
- Loads the icon specified in the editor and shows it in real time (.ico files encoded as bmps and pngs accepted).
2016-11-02 01:03:46 -02:00
FellippeHeitor
4188be2a76 File loading/saving routines implemented. Also:
- New list box method: __UI_ReplaceListBoxItem.
- Menu items can have icons.
2016-10-22 10:09:59 -02:00
FellippeHeitor
e3a27a54ae UI.BAS split into InForm.ui and xp.uitheme. Also:
New UiEditor and UiEditorPreview.
2016-10-19 02:16:49 -02:00