changeset 438:9e198e9f5f7b

Updated some of the architecture plannings. git-svn-id: svn://svn.code.sf.net/p/universalindent/code/trunk@673 59b1889a-e5ac-428c-b0c7-476e01d41282
author thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
date Mon, 12 May 2008 18:09:57 +0000
parents eda4b7b7fe8d
children 196433933b98
files doc/architecture/UniversalIndentGUI/128130.diagram doc/architecture/UniversalIndentGUI/2.session doc/architecture/UniversalIndentGUI/UniversalIndentGUI.prj
diffstat 3 files changed, 357 insertions(+), 32 deletions(-) [+]
line wrap: on
line diff
--- a/doc/architecture/UniversalIndentGUI/128130.diagram	Wed May 07 21:25:21 2008 +0000
+++ b/doc/architecture/UniversalIndentGUI/128130.diagram	Mon May 12 18:09:57 2008 +0000
@@ -2,7 +2,7 @@
 
 classcanvas 128002 class_ref 128130 // CodeViewInterface
   draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
-  xyz 324 7 2000
+  xyz 292 5 2000
   end
 classcanvas 128130 class_ref 129282 // MainWindow
   draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
@@ -10,22 +10,24 @@
   end
 classcanvas 128258 class_ref 129410 // LivePreview
   draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
-  xyz 243 233 2000
+  xyz 350 368 2000
   end
 classcanvas 128386 class_ref 129538 // DiffView
   draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
-  xyz 482 235 2000
+  xyz 560 376 2000
   end
 relationcanvas 128514 relation_ref 128002 // <realization>
   decenter_end 358
-  from ref 128258 z 1999 to point 372 247
-  line 128770 z 1999 to ref 128002
+  from ref 128258 z 1999 to ref 128002
   no_role_a no_role_b
   no_multiplicity_a no_multiplicity_b
 relationcanvas 128642 relation_ref 128130 // <realization>
   decenter_end 724
-  from ref 128386 z 1999 to point 428 252
-  line 128898 z 1999 to ref 128002
+  from ref 128386 z 1999 to ref 128002
+  no_role_a no_role_b
+  no_multiplicity_a no_multiplicity_b
+relationcanvas 129026 relation_ref 129410 // <unidirectional association>
+  from ref 128130 z 1999 to ref 128002
   no_role_a no_role_b
   no_multiplicity_a no_multiplicity_b
 end
--- a/doc/architecture/UniversalIndentGUI/2.session	Wed May 07 21:25:21 2008 +0000
+++ b/doc/architecture/UniversalIndentGUI/2.session	Mon May 12 18:09:57 2008 +0000
@@ -1,16 +1,18 @@
-window_sizes 1154 619 300 848 431 136
+window_sizes 1154 619 300 848 497 70
 windows_style
 diagrams
   usecasediagram_ref 128002 // MassConvert
     743 411 130 4 0 0
-  active  classdiagram_ref 128130 // UiGUI
-    600 341 103 4 0 0
+  active  classdiagram_ref 128130 // Class Diagram
+    708 469 100 4 0 0
+  classdiagram_ref 129282 // Analyse
+    746 404 100 4 0 0
 end
 show_stereotypes
-selected 
-package_ref 129 // UniversalIndentGUI
+selected operation_ref 130434 // showWhiteSpace
 open
   usecaseview_ref 128002 // UiGUI
+  classdiagram_ref 129282 // Analyse
   class_ref 128130 // CodeViewInterface
 end
 end
--- a/doc/architecture/UniversalIndentGUI/UniversalIndentGUI.prj	Wed May 07 21:25:21 2008 +0000
+++ b/doc/architecture/UniversalIndentGUI/UniversalIndentGUI.prj	Mon May 12 18:09:57 2008 +0000
@@ -1,6 +1,6 @@
 format 55
 "UniversalIndentGUI"
-  revision 2
+  revision 3
   modified_by 2 "thomas"
 
 
@@ -140,6 +140,84 @@
     //activity diagram settings
     package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
     show_infonote default drawing_language default
+    classdiagram 129282 "Analyse"
+      draw_all_relations default hide_attributes yes hide_operations yes show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
+      size A4
+    end
+
+    classdiagram 128130 "Class Diagram"
+      draw_all_relations default hide_attributes default hide_operations default show_members_full_definition yes show_members_visibility yes show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
+      size A4
+    end
+
+    class 129282 "MainWindow"
+      visibility package 
+      cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl ""
+      php_decl ""
+      python_2_2 python_decl ""
+      idl_decl ""
+      explicit_switch_type ""
+      
+      comment "This class is the main window of the whole application."
+      classrelation 129282 // <unidirectional association>
+	relation 129282 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 129282 // <unidirectional association>
+	  b parent class_ref 130690 // CodeViewFactory
+      end
+
+      classrelation 129410 // <unidirectional association>
+	relation 129410 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 129410 // <unidirectional association>
+	  b parent class_ref 128130 // CodeViewInterface
+      end
+
+      classrelation 129794 // <unidirectional association>
+	relation 129794 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 129794 // <unidirectional association>
+	  b parent class_ref 130946 // SettingsDialog
+      end
+
+      classrelation 129922 // <unidirectional association>
+	relation 129922 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 129922 // <unidirectional association>
+	  b parent class_ref 130818 // Settings
+      end
+
+      classrelation 130306 // <unidirectional association>
+	relation 130306 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 130306 // <unidirectional association>
+	  b parent class_ref 131074 // IndenterFactory
+      end
+
+      classrelation 130434 // <unidirectional association>
+	relation 130434 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 130434 // <unidirectional association>
+	  b parent class_ref 131202 // IndenterInterface
+      end
+    end
+
     class 128130 "CodeViewInterface"
       abstract visibility package stereotype "interface"
       cpp_decl "${comment}${template}class ${name}${inherit} {
@@ -160,7 +238,7 @@
       
       comment "This abstract class has to be the parent of every code view widget."
       operation 128002 "getToolBar"
-	public explicit_return_type "QToolBar*"
+	public explicit_return_type "const QToolBar*"
 	nparams 0
 	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
 "
@@ -202,7 +280,7 @@
       end
 
       operation 128258 "getSettingsTabName"
-	public explicit_return_type "const QString*"
+	public explicit_return_type "const QString"
 	nparams 0
 	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
 "
@@ -257,26 +335,132 @@
 	idl_decl ""
 	comment "The pointer to the code views settings widget. If it has any at all."
       end
-    end
+
+      operation 129666 "setUnformattedText"
+	public explicit_return_type ""
+	nparams 1
+	  param in name "unformattedText" explicit_type "QString"
+	    defaultvalue "\"\""
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
+"
+	
+	
+	
+	
+      end
 
-    classdiagram 128130 "UiGUI"
-      draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
-      size A4
-    end
+      operation 129794 "getUnformattedText"
+	public explicit_return_type "QString"
+	nparams 0
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
+"
+	
+	
+	
+	
+      end
+
+      operation 129922 "setFormattedText"
+	public explicit_return_type ""
+	nparams 1
+	  param in name "formattedText" explicit_type "QString"
+	    defaultvalue "\"\""
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
+"
+	
+	
+	
+	
+      end
+
+      operation 130050 "getFormattedText"
+	public explicit_return_type "QString"
+	nparams 0
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
+"
+	
+	
+	
+	
+      end
 
-    class 129282 "MainWindow"
-      visibility package 
-      cpp_decl "${comment}${template}class ${name}${inherit} {
-${members}};
-${inlines}
+      attribute 129282 "unformattedText"
+	protected explicit_type "QString"
+	cpp_decl "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
+"
+	java_decl ""
+	php_decl ""
+	python_decl ""
+	idl_decl ""
+      end
+
+      attribute 129410 "formattedText"
+	protected explicit_type "QString"
+	cpp_decl "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
+"
+	java_decl ""
+	php_decl ""
+	python_decl ""
+	idl_decl ""
+      end
+
+      operation 130178 "setSyntaxHighlightingOnOff"
+	public explicit_return_type ""
+	nparams 1
+	  param in name "highlightingOnOff" explicit_type "bool"
+	    defaultvalue "true"
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
 "
-      java_decl ""
-      php_decl ""
-      python_2_2 python_decl ""
-      idl_decl ""
-      explicit_switch_type ""
-      
-      comment "This class is the main window of the whole application."
+	
+	
+	
+	
+      end
+
+      operation 130306 "setEditorStyle"
+	public explicit_return_type ""
+	nparams 0
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
+"
+	
+	
+	
+	
+      end
+
+      operation 130434 "showWhiteSpace"
+	public explicit_return_type ""
+	nparams 1
+	  param in name "whiteSpaceIsVisible" explicit_type "bool"
+	    defaultvalue "true"
+	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
+"
+	cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
+  ${body}}
+"
+	
+	
+	
+	
+      end
     end
 
     class 129410 "LivePreview"
@@ -320,5 +504,142 @@
 	  b parent class_ref 128130 // CodeViewInterface
       end
     end
+
+    class 130690 "CodeViewFactory"
+      visibility package stereotype "factory"
+      
+      constraint "- Gives back a list of available code view widgets as a string list.
+- Can create a by its name defined code view widget object and returns a pointer to it."cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl ""
+      php_decl ""
+      python_2_2 python_decl ""
+      idl_decl ""
+      explicit_switch_type ""
+      
+      comment "This factory knows about the different available code view widgets. It can tell one which widgets might be created and also create a specified widget."
+      classrelation 129538 // <unidirectional association>
+	relation 129538 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 129538 // <unidirectional association>
+	  b parent class_ref 129410 // LivePreview
+      end
+
+      classrelation 129666 // <unidirectional association>
+	relation 129666 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 129666 // <unidirectional association>
+	  b parent class_ref 129538 // DiffView
+      end
+    end
+
+    class 130818 "Settings"
+      visibility package stereotype "model"
+      cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl ""
+      php_decl ""
+      python_2_2 python_decl ""
+      idl_decl ""
+      explicit_switch_type ""
+      
+    end
+
+    class 130946 "SettingsDialog"
+      visibility package stereotype "view"
+      cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl ""
+      php_decl ""
+      python_2_2 python_decl ""
+      idl_decl ""
+      explicit_switch_type ""
+      
+      classrelation 130050 // <unidirectional association>
+	relation 130050 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 130050 // <unidirectional association>
+	  b parent class_ref 130818 // Settings
+      end
+    end
+
+    class 131074 "IndenterFactory"
+      visibility package stereotype "factory"
+      
+      constraint "- Scans for uigui ini files.
+- Can return a string list of available indenters.
+- Can create a indenter widget defined by its name and returns a pointer to it."cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl ""
+      php_decl ""
+      python_2_2 python_decl ""
+      idl_decl ""
+      explicit_switch_type ""
+      
+      comment "Knows about the available indenters by scanning for existing uigui ini files. Can return a list of the found indenters and instantiate a widget for each."
+      classrelation 130562 // <unidirectional association>
+	relation 130562 --->
+	  a role_name "" protected
+	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
+"
+	    classrelation_ref 130562 // <unidirectional association>
+	  b parent class_ref 131330 // Indenter
+      end
+    end
+
+    class 131202 "IndenterInterface"
+      abstract visibility package stereotype "interface"
+      cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl "${comment}${@}${visibility}interface ${name}${extends} {
+${members}}
+"
+      php_decl "${comment}${visibility}interface ${name} {
+${members}}
+"
+      python_2_2 python_decl ""
+      idl_decl "${comment}${abstract}${local}interface ${name}${inherit} {
+${members}};
+"
+      explicit_switch_type ""
+      
+    end
+
+    class 131330 "Indenter"
+      visibility package 
+      cpp_decl "${comment}${template}class ${name}${inherit} {
+${members}};
+${inlines}
+"
+      java_decl ""
+      php_decl ""
+      python_2_2 python_decl ""
+      idl_decl ""
+      explicit_switch_type ""
+      
+      classrelation 130178 // <realization>
+	relation 130178 -_-|>
+	  a public
+	    cpp default "${type}"
+	    classrelation_ref 130178 // <realization>
+	  b parent class_ref 131202 // IndenterInterface
+      end
+    end
   end
 end