Commit Graph

810 Commits

Author SHA1 Message Date
Michael Dickens
4c012bd706 Fluid: when linking include LDFLAGS order
LDFLAGS often contains "-L*" flags as provided outside the build to tell the linker where to search for libraries. If these are included -before- the ones used for internal linkage as found in LINKSHARED, and FLTK is already installed on the system, then the already-installed FLTK libraries will be found before those internal to the build. Moving the LDFLAGS after LINKSHARED generally solves this issue. Worst case the move won't hurt linking since all of the flags are still included in the link command.
2020-08-20 17:34:57 +02:00
Albrecht Schlosser
fcd5239adc CMake: Fix macOS bundle wrapper generation
Now bundle wrapper scripts are created in the particular build folder,
i.e. in subdir 'Debug', 'Release' etc. in multi config builds (Xcode).
To do this, the scripts are now copied whenever the target is built
and not during the configuration phase.

To do: "install" wrapper scripts.
2020-08-18 16:23:25 +02:00
Albrecht Schlosser
4d0b04456e Update dependencies + fluid/generated files 2020-08-03 13:03:14 +02:00
Greg Ercolano
3d18d325f6 Commiting fluid generated template_panel.h as per issue #116
Regarding this comment thread:
https://github.com/fltk/fltk/pull/116#discussion_r458517450
2020-08-02 10:56:40 -07:00
Greg Ercolano
2141c63628 Implement + deploy fl_strdup() 2020-08-01 14:19:40 -07:00
Albrecht Schlosser
720b84ef9d CMake: refactor and reformat CMake files
- raise minimum CMake version from 2.6.3 to 3.2.3 (Jun 01, 2015)
- indent all CMake files according to the CMP (2 col.)
- refactor FLTK version number definitions and usage
- unify CMake and autoconf/configure variable names:
  - FL_VERSION -> FLTK_VERSION
  - FL_MAJOR_VERSION -> FLTK_VERSION_MAJOR
  - etc. for _MINOR_ and _PATCH_, respectively
  - note: this does not affect FL_VERSION etc. in source code
- generate "export headers" for all libraries (experimental: OFF)
- port some forgotten goodies from branch-1.3 to master
- merge and improve macro 'create_example' (WIP)
- remove "temporary" options and code for older CMake versions
- include and use 'GenerateExportHeader' (experimental, WIP: OFF)
  - note: created header files are not yet used
- build only *one* DLL with Visual Studio (tested, works)
  - similar to the bundled IDE projects in 1.3.x
- add some dynamically linked test/demo programs ('*-shared')
  if shared libraries are built (WIP)
- split 'macros.cmake': use one file per macro
2020-07-15 00:34:53 +02:00
Greg Ercolano
da76085fe7 Import Albrecht's utf8 mods for FormatMessage() to fluid
Amended by Albrecht:
 - fix comments
 - add setlocale() to fluid

Note: the latter is also necessary to honor locale in GTK filechooser.
2020-07-14 13:14:37 +02:00
Albrecht Schlosser
8a3d3684ac Fluid: fix "trailing whitespace" errors (#100)
Fluid would write trailing whitespace at some points when generating
.cxx and .h files from .fl files.

This was an old issue but became obvious since we removed trailing
whitespace from source and header files recently.

This commit fixes all whitespace errors in files generated from .fl
files in the FLTK repository, i.e. in fluid/, src/, and test/ folders.

I can't guarantee that I found all possible whitespace errors, but
this commit:

Fixes #100
2020-07-11 18:48:42 +02:00
Greg Ercolano
2b88ce521d Shortcut tooltip elaborates on how to clear shortcut
A user was having trouble figuring this out on fltk.general,
seemed like a tooltip could have helped, so added it.
2020-07-06 21:31:25 -07:00
Albrecht Schlosser
f09e17c3c5 Remove $Id$ tags, update URL's, and more
- remove obsolete svn '$Id$' tags from all source files
- update .fl files and generated files accordingly
- replace 'http://www.fltk.org' URL's with 'https://...'
- replace bug report URL 'str.php' with 'bugs.php'
- remove trailing whitespace
- fix other whitespace errors flagged by Git
- add and/or fix missing or wrong standard headers
- convert tabs to spaces in all source files

The only relevant code changes are in the fluid/ folder where
some .fl files and other source files were used to generate
the '$Id' headers and footers.
2020-07-06 20:28:20 +02:00
Albrecht Schlosser
1da349579d Fix static code analyzer warnings
Note: there's more to do ...
2020-06-24 20:20:11 +02:00
Greg Ercolano
0dc16dd8c9 Added fluid command line '-d' debug flag 2020-06-19 08:59:48 -07:00
Greg Ercolano
db07cea758 Fix problem with Windows pids being unsigned DWORDs
Had to get away from overloading PIDs with error codes,
so now error codes are returned separately from the PID.
2020-06-18 18:24:45 -07:00
Albrecht Schlosser
1078b8fe43 Update dependencies
Change sort order using -f (--ignore-case):
  fold lower case to upper case characters
2020-06-13 12:50:06 +02:00
Albrecht Schlosser
adb2a719d4 Fix fluid undo/redo menu activation and deactivation
(1) fix typo in recent commit
(2) deactivate undo/redo menus on startup and after reset

Fixes issue #84
2020-05-24 22:24:48 +02:00
Greg Ercolano
dcfe826b2f Fix broken undo
Replaced hardwired index#s for undo/redo menu items with dynamic lookup.
2020-05-24 09:02:24 -07:00
Albrecht Schlosser
f930e834c5 Fix documentation URL's 2020-04-08 00:53:16 +02:00
Albrecht Schlosser
d46351a591 Update copyright and FLTK site URL
All .fl files and generated files have been updated.
2020-04-06 20:04:16 +02:00
Albrecht Schlosser
21fb8725c6 Generate copyright year in fluid's about_panel
Copyright year "1998-XXXX" is now generated from current year.
This avoids editing the source code every year.
2020-04-06 20:02:42 +02:00
Albrecht Schlosser
8a7d4c9f61 Remove CodeWarrior "support"
Metrowerks CodeWarrior was an ancient macOS compiler (discontinued
since 2005) that defined the macro __MWERKS__. Code using this macro
and several comments have been removed.
2020-03-11 14:38:02 +01:00
Albrecht Schlosser
a03220aba5 Fix a memory leak in fluid
Also fixed two typos in comments.
2020-03-08 12:42:30 +01:00
Albrecht Schlosser
c4ed2341ec Fix potential null pointer dereferences in fluid 2020-02-11 19:01:48 +01:00
Albrecht Schlosser
8ea4b5b5b1 Fix static analyzer errors and warnings
Fix several bugs found by scan-build (more to come).
https://clang-analyzer.llvm.org/scan-build.html

See also current travis-ci build log with static analyzer, e.g.
https://travis-ci.com/fltk/fltk/jobs/285426415
(link may become invalid in the future).
2020-02-11 15:46:46 +01:00
Matthias Melcher
0a23d7fe6e Fluid needs to include text and binary files from within the .fl source directory.
Fixed including binaries and text to use the same path as the source code. This is consistent with the way the file is selected in the corresponding dialog box. Since the old behavior was false, I don't think this will break any existing projects.
2019-12-24 00:19:23 +01:00
ManoloFLTK
c549b7acbd X11 platform: use Gnome printer dialog when the GTK library is available at run-time
The code to determine whether the GTK library is available is now in Fl_X11_System_Driver::probe_for_GTK()
called both by Fl_Printer::begin_job() and Fl_Native_File_Chooser.
New Fl::option OPTION_PRINTER_USES_GTK allows to deactivate use of
the Gnome print dialog.

Minor change in Fl_Native_File_Chooser: GTK version 3 is searched before version 2,
whereas the search order was the opposite before.
2019-09-15 15:57:29 +02:00
Albrecht Schlosser
6e683783f4 Fix another compiler warning (STR 3529)
fluid/template_panel.{fl|cxx}:

  .../fluid/template_panel.cxx:261:44: warning: ‘%s’ directive output
  may be truncated writing up to 255 bytes into a region of size
  between 0 and 1023 [-Wformat-truncation=]

Solution: increase buffer size from 1024 to 1400.
2019-08-29 17:32:26 +02:00
Albrecht Schlosser
ba8db654ff Fix one compiler warning (STR 3529)
fluid/undo.cxx: fix warning [-Wformat-truncation=]

This fix also removes some static variables and simplifies the
function undo_filename(). It does no longer copy the full filename
string back to a given buffer. Now it returns a pointer to the
internal filename string.

Summary: fix compiler warning, save memory, simplify a function, and
  speed up code by not copying data unnecessarily.
2019-08-29 17:17:37 +02:00
Albrecht Schlosser
44b2b7126c Update dependency system
Try to make `make depend' independent of locale.
2019-06-22 23:42:39 +02:00
Albrecht Schlosser
42afc70b6a Fix potential crash in fluid (issue #14)
trimclassname() would crash if it was given a NULL pointer. Now a
NULL pointer is returned instead.

Fixes #14
2019-04-04 17:20:57 +02:00
Albrecht Schlosser
debc1a39ce Update dependencies 2019-03-25 13:16:05 +01:00
Matthias Melcher
2b1bed470f Fix Fluid batch mode with Fl_Simple_Terminal.
Fl_Simple_Terminal would connect Fluid to the Display in batch mode. We
fix that by creating an Fl_Text_Display instead.
2019-02-16 00:00:24 +01:00
ManoloFLTK
ff8f38f080 Fix Makefile to produce an app bundle under macOS 2019-02-10 16:29:58 +01:00
Matthias Melcher
7d9d7dd7b8 Fixed all Pixmaps to be '*const' (STR #3108). 2019-02-05 00:14:37 +01:00
Matthias Melcher
f4dd9c5199 Added widget visibilit indicator to Fluid (STR #2669). 2019-02-02 23:22:40 +01:00
Matthias Melcher
d6294ac2fc Reorganized Fluid Template feature (STR #3336). 2019-02-01 23:16:49 +01:00
Matthias Melcher
2b6347d0bd STR #3445: Duplicating Widget Class in Fluid no longer crashes. 2019-02-01 21:32:48 +01:00
Albrecht Schlosser
bb91970122 Update dependencies (now sorted)
The main dependencies (makedepend files) are now sorted alphabetically
with one dependency per line.
2019-01-18 16:27:32 +01:00
Albrecht Schlosser
80ad88555f Sort makedepend files for better comparability
The intention is to improve (and minimize) diffs when dependencies
are changed and `make depend' is executed.

(1) use `makedepend ... -w 20'
(2) `sort -u' the resultant file with some more "magic".

(1) makes sure that there is only one dependent file per line,
(2) makes lines unique since `makedepend' can output one file
    many times which is redundant and makes diffs hard to read.

This uses 'mv', 'grep', and 'sort' in all FLTK library Makefiles.
Image libraries are intentionally left for a later update.
2019-01-18 15:44:24 +01:00
Albrecht Schlosser
2167908f8e Update (remaining) dependencies 2019-01-18 14:11:41 +01:00
Matthias Melcher
6ff11dd8d0 Added Fl_Simple_Terminal to Fluid. 2019-01-14 01:43:17 +01:00
Matthias Melcher
6a61772c80 STR 3460: Fluid menu item types
Added pulldown menus to create radio style and checkbox style
menu items without going through the Class menu.
2019-01-14 01:14:40 +01:00
Matthias Melcher
b71601fe7c STR 3460: shell window remembers position
The Fluid window to display the execute shell command result
is now reopened where it was previously closed.
2019-01-14 00:09:31 +01:00
Matthias Melcher
3d6b234c27 STR 3460: remember cursor position in code editor
When editing code in Fluid, the COde_Type class will now
remember the last cursor position and reopen the editor
dialog at that position (not for external editor).
2019-01-13 23:32:34 +01:00
Matthias Melcher
a1ebe87a88 STR 3460: removed nanny code for Fluid comments
When writing comments, FLuid would check if the comment was
C compatible. However, comments don;t need to comply to C
syntax. We could check for the "*/", but is that really needed?
2019-01-13 22:42:01 +01:00
Matthias Melcher
75eefbcd42 Fixing some minor lint, found by Pavel Shlyak using PVS studio 2018-12-27 13:05:35 +01:00
Albrecht Schlosser
474d6e2393 Fix 'fluid.app' for case sensitive macOS file systems.
Change 'Fluid.app' to 'fluid.app'.

Also changed documentation and (https) links in modified files.
2018-12-04 14:20:33 +01:00
Albrecht Schlosser
0321ce7a1c Add missing include file <string.h>.
Preparing for another commit...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13081 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-10-22 01:04:57 +00:00
Matthias Melcher
f58c1d85b8 Fluid inlined text data must be 'const'
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13065 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-10-09 19:56:33 +00:00
Matthias Melcher
b10524fce2 Avoiding crash when accessing free'd memory.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13064 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-10-09 19:53:05 +00:00
Albrecht Schlosser
86b0756e15 Update dependencies and fluid files, fix typos.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13036 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-08-30 10:41:16 +00:00