WJG

Difference between version 225 and 226 - Previous - Next
'''William J Giddings'''

[https://web.archive.org/web/20120603112727/www.wjgiddings.pwp.blueyonder.co.uk/wjg_photo.jpg]

'''Read my Gnocl development blog at''' [http://gnocl.blogspot.co.uk/] 

My involvement in using Tcl/Tk goes back to the 1990s when I was looking for a quick and easy way to program under Linux. During those days I was the head of a local training company which 'honed' the skills of graduates to meet the needs of the media industries. Prior to that I was involved in CGI production for television. But time moves on and so do our careers.

Since 2000 I have worked as a visiting lecturer for a number of local colleges and also act as an external moderator for pre-university programs in the Use of IT and Electronic Media Production.

To help me with my research I use custom-utilities written in Tcl/Tk for the analysis, editing and translation of Chinese Buddhist Sutras.

Current interests include contributing to the [Gnocl] Tcl-GTK binding project.

My principle programming project is "Jiumoluoshi", a specialist translators' text editor. Here's a screen grab of a recent translating session:

[https://lh6.googleusercontent.com/-poi2IE0gWbg/TfS9dhKDHqI/AAAAAAAAA7k/KftuV5qef2s/s640/Screenshot-Jiumoluo%2525202.0b%252520-%252520%25255B-home-wjgiddings-Desktop-T224%252520Daoxing%252520Bore%252520Jing-final-14-t224_14.jml%25255D.png]

Windows version now available for download from SourceForge, get it here [https://sourceforge.net/projects/jiumoluo/].

----

This older Tk version of JMLS has now been replaced by a much faster Gnocl version. Here's a screenshot. 

[WikiDBImage JMLS]

[https://lh4.googleusercontent.com/-5dVTR1A-iTQ/UURFQVVSrLI/AAAAAAAABho/eRazzba9b6U/s640/Screenshot.png]

----

Recent contributions to the Wiki include:

Tcl/Tk Stuff
   * [Appending Values to an Array of Unknown Size]
   * [Accessing Online Language Resources Provided By the University of Chicago.]
   * [Adding 'history' to BWidget ComboBox widgets.]
   * [Balancing Open and Close Quotes in a TK text widget.]
   * [Testing for Balanced Brackets and Braces.]
   * [Capitalize -Create WP formatted title strings on arbitrary strings]
   * [case:title -Create WP formatted title strings on the active selection]
   * [ClrPick -A Colour Selection Megawidget]
   * [Closest Hit - Choosing closest matches to a target value]
   * [CollapsableFrame -A Toggle Resized Labelled Frame Container]
   * [Combo -A simple Combobox widget with entry history.]
   * [Concatenating Multiple Entries in a dict] 
   * [Droptree -Enhanced BWidget Tree Operations]
   * [Easy input of Pinyin]
   * [Easy input of Romanised Sanskrit]
   * [Easyargs -Let proceedure switches set themselves]
   * [Extract Numbers From a String]
   * [Floating Palette]
   * [How many lines in a text widget?]
   * [ITRANS to Unicode Converter]
   * [Testing for Program Installation on Linux]
   * [Labelled Scale Widget with Toggled Keyboard Entry]
   * [LabelText -A Multi Line Entry Widget]
   * [listcomp -Compare the Contents of two Lists]
   * [List Reverse -First In, Last Out!]
   * [LoadButtons -Batch loading of images graphics for GUI objects]
   * [Loading and Saving Application Configuration Files]
   * [lshift -Adding Unique Items to Lists of Fixed Length]
   * [Notions -A Personal Wiki Built Using Tcl/Tk]
   * [Operating TWAIN Scanners through TCL and EZTWAIN.]
   * [Pattern Searches on Blocks of Text]
   * [PhotoAlbum -A Web Gallery Creation Tool]
   * [Pinyin, ASCII to Unicode Converter]
   * [Popup Menus -An all in one solution for application wide popup menus.]
   * [Popups -Using popup menus to offer variations in displayed text]
   * [Postits -Providing Embedded Annotation Functionality to TK Text Widgets]
   * [progress -Progress Bar Widget with Minimal Options] 
   * [Quick Access to Formatted Date & Time]
   * [Quick Formatting ANSI Colour Escape Strings]
   * [Quick Debugging Feedback]
   * [Restricting the Movement of Canvas Items]
   * [Revert -Providing 'Revert' and Save Prompt Functionality to Text Editors]
   * [Roll-Up -Modify MS-Windows palettes to provide Linux-like shading behaviour.]
   * [Scrolled listbox widget -Display a list, pick any item then perform some follow up action.]
   * [Simple ftp uploader]
   * [Simple Queue]
   * [Simple Text Widget Sort]
   * [Simple, Single Series Histogram]
   * [String Difference]
   * [String occurrences]
   * [Syllable Counting]
   * [Switching between Unicode codes and characters]
   * [TclOO -Rendering text pages in OpenOffice Writer from a Tcl application.]
   * [TearoffTabBar -Notebook Style Access to Floating Palettes]
   * [Testing for Balanced Brackets and Braces.]
   * [Text Collapser]
   * [Text Drag -Drag and Drop for Text Widget Selections]
   * [TextZoom -Using mousewheel scrolling events to interactively re-size text widget content]
   * [ToolBar -An Alternative to the BWidget ButtonBox]
   * [TreePad -Structured multipage text editor using TreeCtrl]
   * [WhoAmI? -Letting proceedurally added widgets know their names]
   * [Wordselect -Modifying the Text Widget Binding to Select Words Without any Surrounding Punctuation.]
   * [Splitting multi-paragraph text strings into a list of sub-paragraphs.]
   * [Expanding Markup String Convenience Tags Using String Mapping]


Text/Language Processing
   * [Reformatting Lines of Chinese Text]
   * [CEDict Viewer]
   * [Converting Sanskrit IAST Strings to Devanagri]
   * [Determination of Character Unicode Blocks]

Connundrums
   * [Problem: Two way Communications using Pipes, a Tk GUI and terminal Application.]
Pipes
   * [Two Way Pipe - Communicating with gnuchess.]

GTK/Gnocl Stuff
   * [Gnocl List Picker]
   * [Gnocl Megawidget Creation using TclOO]
   * [Gnocl Megawidget Creation Template]
   * [Gnocl EntryIcons]
   * [Gnocl Simple Stock Item Viewer]
   * [Gnocl Icon Catalogue]
   * [Gnocl Desklets -PhotoAlbum]
   * [Gnocl JukeBox]
   * [Gnocl MenuButton]
   * [gnocl or PyGtk?]
   * [flashCards.tcl -A Simple FlashCard Teaching Utility]
   * [GnoclEdit.tcl -Plain Text Editor Using Gnocl Tcl-Gtk bindings]
   * [Balancing Open and Close Quotes in a Gnocl Text Widget]
   * [WhoAmI? -Gnocl widgets always know who they are]
   * [Gnocl Popup Menus]
   * [bind.tcl]
   * [Undo/Redo Functionality Implementation for GtkTextView Widget Using Gnocl]
   * [Creating Rollover Effects for Text Tags in GtkTexView Widgets with Gnocl]
   * [Using Pango Text Markup Language in Gnocl Widget Labels]
   * [Undo/Redo for Gnocl Text Widgets]
   * [Adding Complex Input Bindings to Gnocl Text Widgets]
   * [Spawning new GtkTextviews]
   * [Using Tcl to search a Text Widget in Gnocl versions 0.9.92 and earlier]
   * [Spellchecking the Contents of the gnocl::text Widget.]
   * [Validating gnocl::entry Values]
   * [Adding Points to gnocl::canvas Line Items]
   * [gnocl::sourceView -Tcl bindings for the GtkSourceView Code Editing Widget]
   * [Organising Multiple Widgets in a Tree-Like Structure with Gnocl]
   * [Gnocl Widget Tree -Revisited]
   * [Creating Circles and Arcs in the Gnocl Canvas]
   * [Setting single pixels in a gnocl::pixBuf]
   * [Gradient fills on a gnocl::pixbBuf]
   * [Gnocl Release 0.9.95]  
   * [Desktop Slide Show]
   * [Gnocl Megawidget - gnocl::listPicker]
   * [Application preferences with gnocl::keyFile]
   * [Simple Metakit viewer using Gnocl]
   * [Displaying a table of values with Gnocl table, eventBox and label widgets]
   * [Displaying Tree Hierarchy with Incremental Node Numbering]
   * [Tabbed/Notebook Menus]
   * [Cloning a Gnocl Widget Made Simple]
   * [Displaying Lists as Tables in a gnocl::text widget.]

GTK/Gnocl Widgets
 Gtk Objects
   * [gnocl::textBuffer]

 Gtk Core Widget Set

   * [gnocl::arrowButton]
   * [gnocl::assistant]
   * [gnocl::box]
   * [gnocl::button]
   * [gnocl::calendar]
   * [gnocl::checkButton]
   * [gnocl::comboBox]
   * [gnocl::comboEntry]
   * [gnocl::dial]
   * [gnocl::dialog]
   * [gnocl::drawingArea]
   * [gnocl::entry]
   * [gnocl::eventBox]
   * [gnocl::expander]
   * [gnocl::fileChooserButton]
   * [gnocl::fixed]
   * [gnocl::folderChooserButton]
   * [gnocl::handleBox]
   * [gnocl::iconView]
   * [gnocl::image]
   * [gnocl::label]
   * [gnocl::linkButton]
   * [gnocl::list]
   * [gnocl::notebook]
   * [gnocl::paned]
   * [gnocl::progressBar]
   * [gnocl::radioButton]
   * [gnocl::scale]
   * [gnocl::scaleButton]
   * [gnocl::scrolledWindow]
   * [gnocl::separator]
   * [gnocl::spinButton]
   * [gnocl::table]
   * [gnocl::text]
   * [gnocl::tickerTape]
   * [gnocl::toggleButton]
   * [gnocl::tree]
   * [gnocl::volumeButton]
   * [gnocl::window]


 GIMP Widget
   * [gnocl::ruler]
   * [gnocl::curve]
   * [gnocl::gCurve]

 Working with PixBuffs and Images
   * [gnocl::pixBuf -using Gnocl to interact with off-screen drawable objects]

 Gtk Packages
   * [gnocl::sourceView]
   * [gnocl::abiwidget]

 Gnome Widgets
   * [gnocl::canvas]
   * [gnocl::vte]

 Auxilliary Libraries
   * [gnocl::OpenGL]
   * [gnocl::pdfViewer]
   * [gnocl::webKit]


Gnocl/Glade
   * [Loading Glade UI Configuration Files into Tcl/Gnocl Applications]
   * [Embedding Glade UI Files into Tcl/Gnocl Scripts]
   * [Re-using widgets specified in a Builder UI with gnocl::builder buffer] 

FreeWrap
   * [Accessing Gnocl Modules from their Regular Installation Directories with Scripts Compiled using FreeWrap]

Gnocl Applications
   * [grepGui -an experimental Gnocl based front end for use with Grep]


[http://farm1.static.flickr.com/230/480023477_8a690b9c72_m.jpg]

LUGRADIO Live 2008
   19th - 20th July, Wolverhampton, UK.
   Presentation on Gnocl, the Tcl/GTk bindings. 
   http://lugradio.org/live/UK2008
   
Get a PDF of the presentation slides from here [http://wjgiddings.googlepages.com/LugRadioLivePresentation.pdf]

Review
   * [REVIEW: Tcl/Tk 8.5 Programming Cookbook]
----
   * [GTK-Server]
----
Programmer's Editors
   * [Geany]

<<categories>> Person