#2 RulerModeler enhancements

open
nobody
None
5
2012-12-07
2006-08-06
No

Here are modifications for the new RuleModeler:

Changelog

Global modification:
Fixed memory leaks
Fixed undo
Fixed automatic update of GUI on modifications
Fixed bug in EOKeyValueArchiver with the empty dictionary
Fixed search in rhs.value when value description is on multiple lines
Fixed bugs with special characters (\n, \t, " and non-ASCII characters)
Refactorized data validation
Refactorized rule (un)archiving
Added new preferences
Added rhs.value info from d2wclientConfiguration.plist files
Reviewed GUI to use small items instead of normal-sized ones in detail
view
Replaced textfield by textview to get scrollers, for rhs.value edition
Added external modification handler.

Assignment.*
Added automatic notifications on changes. Fixed memory leaks. Added
methods for one-line descriptions. Refactoring. Added better data
validation et reformatting. Changed undo management. Added user
help text. Added back-pointer to model.

Defaults.plist
Contains default settings.

English.lproj/MainMenu.nib/info.nib
English.lproj/MainMenu.nib/objects.nib
Added application delegate connection. Added Cmd-U shortcut for
revert.

English.lproj/RMModelEditor.nib/classes.nib
English.lproj/RMModelEditor.nib/info.nib
English.lproj/RMModelEditor.nib/keyedobjects.nib
Uses small element size instead of normal for detail view. Replaced
textfield by textview for rhs.value edition. Added component
description. Changed placeholders. Autosaves tableView config.

English.lproj/RMPreferencesWindow.nib/classes.nib
English.lproj/RMPreferencesWindow.nib/info.nib
English.lproj/RMPreferencesWindow.nib/keyedobjects.nib
Added new preferences

EOControl.h
Fixed compiler warnings

EOKeyValueArchiverFix.*
Fixed EOKeyValueArchiver bug using a posing class - unability to
encode the empty dictionary

NSPropertyListSerializationAdditions.*
Refactoring to allow different output types. Fixed bugs with special
characters (\n, \t, " and non-ASCII characters)

RMAppDelegate.m
Added option to not create new document at startup. Added better
error alert rendering. Added external modification handler.

RMFilteringArrayController.h
Removed declaration of unexisting method

RMFilteringArrayController.m
Fixed memory leaks

RMModel.*
Changed method declarations. Fixed memory leaks. Renamed
deprecated methods and added error messages. Fixed bug with undo
management.

RMModelEditor.*
Fixed memory leaks. Added help text when rhs.value is a component
name. Fixed automatic update of preview. Reordered default toolbar
items. Fixed bug with NSNull. Added NSStringPboardType for copy.
Added automatic save of tableView config. Added automatic sorting at
startup.

RMPreferencesWindow.*
New preferences.

Rule.*
Added back-pointer to model. Fixed undo management. Fixed memory
leaks. Added automatic change notifications. Refactoring of
instantiation of rules from property-list.

RuleModeler.xcodeproj/project.pbxproj
Added new files. Universal binary.

SearchExtensions.m
Fixed method signatures.

Discussion

  • Logged In: YES
    user_id=301306

    Merged Anjo's latest modifications.
    RMModelEditor.m: Fixed resize of help view when splitview changes.
    Assignment.m: Fixed automatic refresh of help when value changes.

     
  • Logged In: YES
    user_id=301306

    Enhancement to Assignments: in table view (only), displays CLASS
    (MY.PACKAGE), instead of MY.PACKAGE.CLASS (but allows both styles in edition).
    Removed SearchExtensions.* which were not used.