Contents

Previous: 0 Foreword
Next: 1 First steps

Contents

0 Foreword
   0.1 Style
   0.2 Where to look for specific help
   0.3 Ten steps for a programmer, a giant leap for the application
   0.4 There are plenty of facilities in ClearWin+ that I won’t cover
1 First steps
   1.1 What happens next
   1.2 What the statements do – compiler directives and the PROGRAM statement
   1.3 What the statements do – oddments of FORTRAN
   1.4 What the statements do – parts of ClearWin+
   1.5 I did it my way – you do it your way
   1.6 Discussion of HOMER.FOR
   1.7 Some homework, or ‘self-managed learning’
   1.8 Enhancing the Help menu
   1.9 What’s with the @ symbol?
   1.10 The parts of a Windows user interface
   1.11 Do it your way
   1.12 A note to remember – what are callback functions for?
2 Enhancing the File menu and incorporating your existing code
   2.1 Your first job – deal with Exit using a standard callback – because it’s easiest
   2.2 The real work begins – make sure your existing code works with FTN95
   2.3 Issues to resolve
   2.4 Grey codes
   2.5 File / Open routine
   2.6 That old Fortran program of yours
   2.7 Source code organisation
   2.8 Another way to select the file to open
   2.9 Don’t get caught by historical artifacts
   2.10 What to do with output
   2.11 Now what about picking up those errors in an input file?
   2.12 Buttons
   2.13 %tt buttons
   2.14 %bb and %bn buttons
   2.15 Status bar
3 It’s been a long road, getting from there to here ...
   3.1 Some issues about compiling the old program
   3.2 Things FTN95 won’t do for you (not many!)
   3.3 Things that are quite possibly rather different
   3.4 Statement numbers everywhere …
   3.5 Comments and layout
   3.6 DO and CONTINUE
   3.7 In summary ... almost
   3.8 Debugging
   3.9 Character variables
   3.10 Continuations
4 Graphics in the client area
   4.1 Drawing in a single %gr area
   4.2 Scaling
    4.3 Multiple %gr drawing surfaces
   4.4 The %dw graphics area
   4.5 REAL coordinates and the GDI+
   4.6 Updating graphics
   4.7 Drawing text – in graphics mode
   4.8 User selection of a font
   4.9 Resizing the graphics area
   4.10 OpenGL
   4.11 Do you know what you want to draw?
   4.12 Your exercise
5 Going back to the File menu
   5.1 Start with Save in the File menu
   5.2 Save As in the File menu
   5.3 Data file formats
   5.4 Making a backup copy
   5.5 Changing the grey codes
   5.6 What do you really want to save?
   5.7 Keep the user informed
   5.8 The most recently used (MRU) files list and dynamic menus
6 Entering and editing data
   6.1 Dialog windows with data entry
   6.2 Enhancing the dialog
   6.3 Design and layout issues: using REAL data boxes
   6.4 Adding and deleting links and nodes
   6.5 Text input and updating graphics
   6.6 The File/New menu command
   6.7 An example
   6.8 Dialog box design
   6.9 Action buttons in the example
   6.10 Option selection: radio buttons and tick boxes
   6.11 Option selection: drop down lists
   6.12 Pop up information dialog boxes
   6.13 Do you wanna be in my gang …
   6.14 Outline boxes
   6.15 Lining things up
   6.16 Backgrounds for dialog boxes
   6.17 ‘Sticky’ dialogs
   6.18 A note to remember (again) – what are callback functions for?
7 Graphical interaction – early steps
   7.1 Mouse clicks
   7.2 Standard mode
   7.3 Full mouse input mode
   7.4 Selecting an item
   7.5 Tool selection
   7.6 Zooming and panning
   7.7 Implementing zoom and pan with block selection
   7.8 A complete example
   7.9 Selection of an option via a menu that pops up at the cursor position
   7.9 Oh Drat!
8 Bitmaps and icons, cursors and other resources
   8.1 Resources
   8.2 Drawing bitmaps
    8.3 Back to the About box with a bitmap
   8.4 Using thematic colours
   8.5 Icons
   8.6 Graphic images in a dialog box
9 Toolbars
   9.1 Textual toolbars
   9.2 Textual toolbars using the revised button format (%bb)
   9.3 Do-it-yourself toolbars
   9.4 Success and failure – an example to treat those two impostors just the same8
   9.5 Take it easy9
10 Proper Toolbars, using %tb or %ib
   10.1 General design issues
   10.2 Icon size
   10.3 Icon design for %tb
   10.4 Drawing a set of toolbar buttons for %tb
   10.5 Programming %tb
   10.6 Exercise with %tb
   10.7 Programming imagebars with %ib
   10.8 Drawing the bitmaps for imagebar buttons
   10.9 Design for %ib and %bb icons
   10.10 What do I want in a toolbar?
   10.11 Some examples from my own work - %ib
   10.12 Tools in a status bar
   10.13 The one easy thing about toolbars
11 Tabulated output for screen or printer
   11.1 Pre-Windows and early Windows personal computers
   11.2 ‘Printing’ to the screen
   11.3 ClearWin+ windows
   11.4 Printing hardcopy like a lineprinter
   11.5 A ‘print station’
   11.6 Another idea
   11.7 Take a moment to reflect ...
   11.8 What to do with large volumes of printout
12 Printing graphics
   12.1 Printing text only, but in graphics mode.
   12.2 Printing graphics on their own
   12.3 Printing a mixture of text and graphics
   12.4 Some issues while printing graphics
   12.5 Printing from a commercial application
   12.6 Issues relating to Print on the File menu
   12.7 Portrait or landscape?
   12.8 Line thicknesses and font sizes
   12.9 Vector graphics, and saving files for interchange of graphics
   12.10 SVG graphics
13 Large fonts and dual monitors
   13.1 A workaround
   13.2 Monitor size and aspect ratio
   13.3 Multiple monitors
   13.4 Working away from ‘home’ or without the Internet
14 Inputting and editing tables
   14.1 Looking at Excel for ideas
   14.2 Out of grid (or off-grid) editing
   14.3 Data interchange between programs
   14.4 Listview (%lv) – setting up the grid
   14.5 Listview – setting the initial values in the rows
   14.6 Scrolling the contents of a listview control
   14.7 Editing cells in a %lv
   14.8 Fancy effects with %lv
   14.9 Grids of %rs, %rd and %rf
15 Plotting graphs
   15.1 DIY graphs and charts
   15.2 Symbols and lines
   15.3 Scales, ranges and intervals
16 When I was younger, so much younger than today ... Help
   16.1 Tooltips
   16.2 Hypertext and the internet
   16.3 Accelerator keys
   16.4 Help yourself13
   16.5 Undo and Cancel
17 Startup and closedown
   17.1 Fortran start up
   17.2 Main window start-up
   17.3 Main window close down (and exiting dialogs)
   17.4 Fortran close down
   17.5 Exit Windows
   17.6 Programs started by clicking on a registered datafile
   17.7 Dropping files instead of Open
   17.8 Configuration files
   17.9 Window styles
   17.10 Initial splash screens
   17.11 A note about handles
18 Some more about graphics
   18.1 Drawing modes and an example
   18.2 Cursors
   18.3 Previewing real-world coordinates
   18.4 More on status bars
19 I shall say this only once ...
   19.1 Dynamic captions
   19.2 Exit Windows
   19.3 Windows styles
   19.4 The minimise icon
   19.5 Pivots and resizing
20 Beat the clock
   20.1 Analyses with short delays
   20.2 Longer completion times
   20.3 Even longer completion times
   20.4 Answers to my questions
   20.5 The drum beat
21 Dealing with text
   21.1 Short strings
   21.2 Editing functions
   21.3 Drop down selection boxes
   21.4 Other selections
   21.5 Long text blocks
22 My least favourite bits
   22.1 EXTERNAL routines such as callback functions
   22.2 Foibles
   22.3 Branchview and Treeview (%bv and %tv)
   22.4 OpenGL
   22.5 Large fonts
   22.6 Windows changes from version to version
23 Distributing your application
   23.1 Installer programs
   23.2 User manual
   23.3 Hardcopy devices
   23.4 Multiple monitors
   23.5 The program icon
   23.6 Licensing
24 The eight elements of ClearWin+
   24.1 Those 8 things: No. 1, WINAPP
   24.2 Those 8 things: No. 2, INTEGER*4 and REAL*8
   24.3 Those 8 things: No. 3 ClearWin+’s WINIO@ function
   24.4 Those 8 things: No. 4 ClearWin+’s format codes
   24.5 Those 8 things: No. 5 callback functions
   24.6 Those 8 things: No. 6 Libraries
   24.7 Those 8 things: No. 7 Standard Subprograms and Parameters for ClearWin+
   24.8 Those 8 things: No. 8 Resources
25 Departing from the norm
   25.1 Why?
   25.2 The graphics
   25.3 What, no File menu?
   25.4 Menus
   25.5 Program organisation
26 Fools rush in
   26.1 Inter-process communication
   26.2 Shared memory
   26.3 Using all the CPUs
27 How I came to write this book
   27.1 About me
   27.2 In the beginning ....
   27.3 A sea change23
   27.4 ClearWin+
   27.5 Geotechnical software
   27.6 The ultimate programming pedestrian
Appendix A: A routine for plotting arrows
Appendix B: A routine for plotting grids
Appendix C: Contouring
   C.1 The simple algorithm
   C.2 Using a plotter
   C.3 Labelling the contour values
    C.4 A slight warning (or two)
   C.5 Finite elements and smoothing
Appendix D: Drawing graphics for finite element method (FEM) applications
   D.1 Drawing finite element meshes with outlines
   D2 Drawing FE meshes with internal shading
   D3 Progressions
Appendix E: Graphical interaction – the ‘stretchy box’
Appendix F: Useful reading
Appendix G: How and where to look for help documentation
Appendix H: HOMER.FOR written as HOMER.F
Appendix I: The full code for the Listview example
Appendix J: Efficient use of Fortran (and computing resources)
Acknowledgements
Basket
Empty
 
Copyright © 1999-2024 Silverfrost Limited