Commit Graph

1981 Commits

Author SHA1 Message Date
Michael R Sweet
59004878f3 Many FLUID updates...
fluid/align_widget.cxx:
    - Add widget_size_cb() to set default size and size of
      labels and text for selected widgets.

fluid/factory.cxx:
    - More normalization of menus - "..." when opening a window,
      Capitalized Words.
    - cb(): Assign default label/text size and resize to ideal
      size.
    - Make sure that all buttons, input, and valuator widgets
      have default label strings.
    - Fl_*_Button::ideal_size(): fix ideal width calcs to match
      widget.

fluid/Fl_Menu_Type.cxx:
    - Fl_Menu_Item_Type::make(): set default label size.

fluid/Fl_Type.h:
    - Add Fl_Widget_Type::default_size global.
    - Fl_Menu_Item_Type::type_name(): return "Menu_Item".
    - Fl_Submenu_Type::type_name(): return "Submenu".
    - Update ideal_size() methods to use a default height that
      is evenly divisible by 5.
    - Fl_Choice_Type::ideal_size() and
      Fl_Menubutton_Type::ideal_size(): fix ideal width calcs to
      match widget.
    - Fl_Menu_Bar::ideal_size(): add, returning the window
      width.

fluid/fluid.cxx:
    - Add "Layout/Widget Size" submenu.
    - "File/Write code..." becomes "File/Write Code..." and
      "File/Write strings..." becomes "File/Write Strings..."

fluid/fluid.plist:
    - Bump version number and copyright info.

fluid/Fl_Widget_Type.cxx:
    - Fl_Widget_Type::ideal_size(): add box dw/dh and enforce a
      minimum size of 15x15.
    - labelsize_cb(): use Fl_Widget_Type::default_size instead
      of FL_NORMAL_SIZE.
    - textsize_cb(): use Fl_Widget_Type::default_size instead of
      FL_NORMAL_SIZE.

fluid/Fl_Window_Type.cxx:
    - Fl_Window_Type::newdx(): require at least 2 pixels of
      movement.
    - Fl_Window_Type::draw_overlay(): adjust bounding box for
      outside labels above and below.
    - Fl_Window_Type::handle(): reset dx/dy on FL_PUSH.

fluid/function_panel.cxx:
fluid/function_panel.fl:
fluid/function_panel.h:
    - Update some of the windows for the "small" size.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4129 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-19 04:09:32 +00:00
Michael R Sweet
a218f44b5d Bug fixes and UI tweaking...
src/Fl_Menu_.cxx:
    - Fl_Menu_::find_item(): wasn't checking for a non-NULL label()...

fluid/alignment_panel.*:
fluid/widget_panel.*:
    - Use small controls, normalize layout.
    - Add FLTK header/footer comments.

fluid/Fluid_Image.cxx:
    - Use relative paths for images.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4127 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-18 06:29:11 +00:00
Michael R Sweet
1e742cc41f Use check items for overlays and the widget bin, and track their state.
Add Edit/Duplicate to duplicate the current selection; this functions
independently of the cut/copy/paste buffer.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4126 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-17 21:57:17 +00:00
Michael R Sweet
8fcd08ffaa Tweak 1.1.x FLUID some more...
fluid/about_panel.*:
    - Finish cleanup of about dialog.

fluid/comments.h:
    - Change default FLTK header comment to refer to the STR
      page instead of fltk-bugs (will update the CMP
      accordingly)

fluid/fluid.cxx:
    - Update all menu items that open a window to have "..."
    - Change overlays/widget bin on/off to "Toggle foo"
    - Add a divider after toggle items.

fluid/makedepend:
    - Update FLUID dependencies so that changes to comments.h
      will cause an rebuild of the affected files.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4125 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-17 07:11:57 +00:00
Matthias Melcher
93a2170661 fixed frame drawing of Fl_Text_Display (STR #762.2). Thanks for the patch proposal to Alessandro Portale.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4123 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-15 22:50:53 +00:00
Michael R Sweet
23f90b2301 STR 748: Fl_Clock_Output::value(ulong) does not change value_
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4109 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-12 23:18:48 +00:00
Michael R Sweet
fb820bcf23 Add icon images (still need to update OSX icon file...)
Update FLUID about window to use new icon and clean up layout.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4103 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-10 12:23:43 +00:00
Michael R Sweet
e747c49422 Use copy_label() instead of strdup() for button labels.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4102 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-10 11:44:19 +00:00
Michael R Sweet
7cad39d3ef Start working on a new FLUID icon for desktop integration...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4098 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-10 04:15:17 +00:00
Michael R Sweet
3bf9a5cb2f Ahem, Fl_File_Chooser.H, not fl_file_chooser.H... :)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4097 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-10 03:14:20 +00:00
Matthias Melcher
327f5f14a5 Removed warning about for(;;) variable lookup
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4094 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-09 21:35:09 +00:00
Matthias Melcher
00651bc412 Updated CHANGES file. Removed CRLF from xpm Pixmaps
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4093 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-09 21:31:13 +00:00
Matthias Melcher
fc1a4cf809 Added a new Type to fluid called 'Comment' to be used for standardized Copyright notices and other comments throughout the source code.
- simply add the 'Comment' type from the 'New' menu or the Widget Bin
- comments in the very first position will be added at the very beginning of the source file or header. Comments at the end are at the very end in source and headers as well.
- if the users enters simple text, FLUID will add '// ' in front of every line. If a line already starts with '//' or a block starts with '/*', the text will be copied verbatim.
- text can be loaded from files
- text can be stored in a database and quickly retrieved later via a pulldown menu. The pulldown menu is customizable.

Enjoy!

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4092 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-09 21:26:53 +00:00
Matthias Melcher
2bbee87dc3 'Anonymous' reported a problem when using Fl_Value_Input. It seemed,
that contrary to the man pages, a fractional 'step' value above 1
would not create a floating point input.

In fact it does, but the output was formatted wrong so that the 
digits after the decimal point were never rendered.

I changed the Fl_Valuator::format(double v) function how I beleive
it should format the output correctly, but as already stated by
the original author in the source code, this is a hack that should
be fixed by providing a 'precission' setting for valuators.

Anyway. My fix makes sure that all digits right of the decimal 
point are always rendered, so that the step value will show full
precision. This gives a much better behavior in respect to steps values
like 2.5, 3.75, etc., but also leads to 8 digits after the decimal point
for step(1.0/3.0)... .

I suggest that we keep this change (hence the commit), risking that 
rendering of valuator text will change in a few cases (odd step() values).



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4091 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-08 22:55:10 +00:00
Michael R Sweet
29e022cc46 Use grid size for window resizing.
Save work on project settings dialog.

Ideal spacing for group-derived widgets is 10 pixels, except for
tabs which has a Y spacing of 25 (for the normal label size)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4090 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-08 13:46:31 +00:00
Michael R Sweet
8769b2f7fa Make guides and snap work from either side of a widget border.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4089 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-08 04:37:39 +00:00
Michael R Sweet
3ecd5ba911 Only horizontally snap align when the current widget is within 50
pixels vertically of the other widgets.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4088 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-08 02:57:19 +00:00
Michael R Sweet
9998dcc396 Clean up more snap glitches...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4087 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-08 02:38:33 +00:00
Michael R Sweet
cdcb8a50e2 More guide stuff - most of the widgets that need it should have their
own custom ideal_size() function, and we now snap when showing the
alignment guides.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4086 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-07 23:55:49 +00:00
Michael R Sweet
120dbf2c46 Add ideal_size() and ideal_spacing() methods, which are used for the
guide stuff.  This allows for different sizes and spacing depending on
the widget and size...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4085 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-07 20:46:21 +00:00
Michael R Sweet
f00f9c7422 Update widget panel so that the "GUI" tab is shown first.
Clean up implementation of guide lines and snapping - now does horizontal
*and* vertical snapping/spacing, nicer drawing of width/height lines,
eliminated space width since we're always doing 10 pixels, and delay
drawing of bounding box until the end so that snap adjustments are reflected
in the display.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4084 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-07 16:55:34 +00:00
Michael R Sweet
11d689f5bc Save my changes to the guide lines - basic snapping is implemented with
10 pixel spacing and recommended width/height.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4073 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-06 05:19:26 +00:00
Michael R Sweet
ec7b060957 Fix Fl_Input_Choice in FLUID, and make sure that we expose enough of the
text and box stuff for use in FLUID.

Update dependencies.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4072 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-06 00:32:11 +00:00
Michael R Sweet
9b5555d142 fl_filename_relative() didn't compare drive letters in a
case-insensitive way (STR #741)

src/filename_absolute.cxx:
    - fl_filename_relative(): use tolower() when comparing drive
      letters.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4071 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 23:09:36 +00:00
Michael R Sweet
e6399f8f37 Fix menu drawing...
src/fl_draw.cxx:
    - fl_measure(): use "h" instead of "min(w,h)", since "w" is
      usually 0.

src/Fl_Menu.cxx:
    - Revert previous "fix" in Fl_Menu_Item::measure()


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4070 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 23:01:00 +00:00
Michael R Sweet
a48c6dd545 Fixed menu item width calculations with symbols (STR #740)
src/Fl_Menu.cxx:
    - Fl_Menu_Item::measure() - initialize w and h to label font
      size so that the symbol size is calculated properly.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4066 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 19:53:43 +00:00
Michael R Sweet
2c989c8e4c More browser documentation changes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4065 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 19:31:42 +00:00
Michael R Sweet
b066dea55d The keyboard shortcut handling code did not handle 8-bit
characters properly (STR #731)

src/Fl.cxx:
    - Fl::handle(): use unsigned char * for event_text()
      shortcut key conversion.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4064 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 19:23:19 +00:00
Michael R Sweet
c3a5b61223 Doco fixes (show const modifier on methods)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4063 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 19:18:07 +00:00
Michael R Sweet
52e086f75b Fl_JPEG_Image could still crash an app with a corrupt JPEG file
(STR #739)

src/Fl_JPEG_Image.cxx:
    - Use setjmp/longjmp to catch JPEG file errors and prevent the
      JPEG library from crashing the FLTK app.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4061 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 15:25:30 +00:00
Michael R Sweet
62721060db Using the layout alignment controls on a menu widget would cause
FLUID to crash (STR #742)

The Fl_Input_Choice documentation was not installed (STR #745)

documentation/Makefile:
    - Add Fl_Input_Choice.html to list of doco files.

fluid/align_widget.cxx:
    - Only do a full resize if the widget is not a menu button.
    - Also set modflag when making changes.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4060 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-03-05 15:09:59 +00:00
Michael R Sweet
24b82a1cb0 Run ranlib on installed JPEG library.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4058 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-28 00:11:07 +00:00
Matthias Melcher
5b49a9ae51 Added visual gudelines for widget distances and sizes to fluid. It is disabled by default, but can be enabled in the "Grid" dialog box. I am not sure if this is actually a good change, but thanks to SVN I'll risk a commit to get some feedback fro the early adopters.
Fluid now indicates a "good" (according to some Apple guidelines, but that's not permanent y any means) distance of widgets to the window border, indicates vertical and horizontal alignment with other widgets, shows "good" sizes for buttons, and indicates a good distance between two buttons at the same y-position.

Achtung, Baby: I wrote this on a WIndows machine, hoping that SVN will replce CR/LF with LF's, as promised by the documentation. Unix users: please check and blame me!

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4057 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-26 20:27:19 +00:00
Matthias Melcher
3145a0d010 (Re)Added dependency of 'help' on zlib, png and jpeg.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4055 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 22:11:23 +00:00
Matthias Melcher
0b7083ac40 Modified VisualC Workspace. Hoping I don't interfere with Mike, but take some work away from him... .
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4054 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 22:02:19 +00:00
Matthias Melcher
587aee4c7c Added VisualC 6 IDE file for new Fl_Input_Choice test
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4053 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:58:25 +00:00
Michael R Sweet
add37faa25 Copyright updates.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:55:12 +00:00
Michael R Sweet
9cca0a6c9a Added QNX bug workaround for menu handling (STR #704)
src/Fl_Menu.cxx:
    - menuwindow::handle(): #ifdef QNX check for done menu


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4051 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:51:38 +00:00
Michael R Sweet
2df3459457 Added Greg Ercolano's simple Fl_Input_Choice widget which is a
combination of the Fl_Input and Fl_Menu_Button widgets (STR
#650)

FL/Fl_Input_Choice.H:


documentation/Fl_Input_Choice.html:
    - Added.

documentation/fltk.book:
    - Added Fl_Input_Choice.html + --no-embedfonts option.

documentation/index.html:
    - Update version number and revision.

documentation/input_choice.jpg:
    - Added.

documentation/preface.html:
    - Update version number and revision.

documentation/widgets.html:
    - Add Fl_Input_Choice to lists.

fluid/Fl_Menu_Type.cxx:
    - Add Fl_Input_Choice_Type class and instance.

fluid/Fl_Type.h:
    - Add Fl_Input_Choice_Type class and instance.

fluid/factory.cxx:
    - Add Fl_Input_Choice menu item.

test/Makefile:
    - Add input_choice example.

test/input_choice.cxx:
    - Added.

test/demo.menu:
    - Add input_choice example.




git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4050 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:14:22 +00:00
Michael R Sweet
97b9464f59 Fl_Multiline_Input now scrolls the full height of the widget
instead of 5 lines when the user presses PageUp or PageDown (STR
#727)

src/Fl_Input.cxx:
    - Set repeat_num to h()/textsize() instead of 5.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4049 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 20:35:07 +00:00
Michael R Sweet
c2873e6c63 Fix builds without JPEG library...
src/Fl_JPEG_Image.cxx:
    - Surround FLTK JPEG state structure with #ifdef...



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4048 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 20:28:49 +00:00
Michael R Sweet
3ee9c50180 CMake build fixes (STR #724)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4047 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 20:26:22 +00:00
Michael R Sweet
36402b7fe5 Fl_Browser::swap() didn't handle redraws properly when the
swapped lines had different heights (STR #729)

src/Fl_Browser.cxx:
    - Fl_Browser::swap(): call redraw_lines() instead of
      redrawing individual lines.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4046 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 20:17:08 +00:00
Michael R Sweet
5b0aae2e87 FL_MOUSEWHEEL events are now sent first to the widget under the
mouse pointer and then to the first widget which accepts them.
This is similar to the way shortcut events are handled and is
consistent with the way the mouse wheel is handled by other
toolkits.

src/Fl.cxx:
    - Fl::handle(): Send FL_MOUSEWHEEL events to grab() or
      current window instead of focus widget.

src/Fl_Group.cxx:
    - Fl_Group::handle(): Send FL_MOUSEWHEEL events first to an
      event_inside() widget, then to the first non-inside widget
      that accepts them.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4045 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-20 00:23:36 +00:00
Michael R Sweet
452c17f8fb Fl::wait() could block on WIN32 if the window was deleted via
Fl::delete_widget() (STR #679)

src/Fl.cxx:
    - Post an application message when a window is hidden on WIN32.

src/Fl_win32.cxx:
    - Change async select message to WM_APP + 1, and document
      our use of WM_APP.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4043 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-14 13:44:24 +00:00
Michael R Sweet
ab8f3f793a Fl_Preferences::RootNode did not find the user's home directory
on some non-US versions of Windows (STR #720)

src/Fl_Preferences.cxx:
    - RootNode::RootNode(): if AppData key does not exist, try Personal
      key instead.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4042 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-14 13:15:39 +00:00
Michael R Sweet
cb852cd3eb Fl_Window::hide() didn't delete the current clipping region on
WIN32, causing a GDI resource leak in some situations (STR #723)

src/Fl.cxx:
    - Fl_Window::hide(): move XDestroyRegion() call outside of
      the X11-specific code.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4041 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-14 11:11:19 +00:00
Michael R Sweet
80b9844b53 Fix initializers and error handling.
src/Fl_JPEG_Image.cxx:
    - Add custom error manager structure and update error and output
      handlers so we properly handle bad JPEG files.

src/Fl_Shared_Image.cxx:
    - Add initializers for num_handlers, alloc_handlers, and handlers
      variables.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4040 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-12 02:41:52 +00:00
Michael R Sweet
6492c43b4b Check for no icon, and if so manually check for a directory...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4038 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-06 19:36:10 +00:00
Matthias Melcher
16cc0e1f9c ...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4037 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-06 16:31:59 +00:00