Commits

Herbert Breunung  committed 2fdcfc1

enhance internals documentation

  • Participants
  • Parent commits cd3dce8

Comments (0)

Files changed (2)

File lib/Kephra/App/Part/Editor.pm

 		Kephra::DocumentStash::del($doc);
 	} else {
 		$doc->editor->ClearAll;
-		$doc->assign_file_name('');
+		$doc->assign_file_path('');
 		$main_doc_bar->set_page_title('');
 	}
 	Kephra::API::main_window()->refresh_title();

File lib/Kephra/Internals.pod

 =head2 Kephra::API
 
 The module Kephra::API is the best starting point to understand the inner workings.
-It's one design goal and purpose of this file, because it gives an overview of
+Thats's one design goal and purpose of this file, because it gives an overview of
 all important functions and values and shows where they originate. From here
 you can step to the other major interfaces that can be seen in the first lines.
 
-But more vitally it decouples cross module calls and allows to change things
-under the hood. As long as the first version number (see L<Versioning>)
-does not change, nothing will be removed from the API.
+But more vitally it decouples many cross module calls and allows to change things
+under the hood during smaller release cycles. As long as the first version number
+(see L<Versioning>) does not change, nothing will be removed from the API.
+
+=head2 Kephra::Config
+
+Interface too most not document related internally held data.
+We have a much broader understanding of configuration.
+Even Icons and localisation belong to it.
+Its all data which puts the app in the state it is.
 
 =head2 Kephra::CommandList
 
 
 =head2 Kephra::KeyMap
 
+handles the mapping from key kommbo to the command it triggeres for any 
+App::Dialog and App::Part
+
 =head2 Kephra::EventTable
 
+
 =head1 NAMESPACES
 
 If you want to leave the recommended ways as proposed by the API
 
 to the namespace Kephra::Doc::* belongs also the module Kephra::Doc
 
-=over 2
 
 * Kephra
 
-internals
+contains just the init process:
+setting dirs, loading libs, finding configs, start worker fork
 
 * Kephra::API
 
-interface all plugins and internal functions should use
+interface to important internal functions all modules and plugins should use
 
 * Kephra::App
 
-all the Wx-GUI-related stuff, all visible parts
+namespace of all the Wx-GUI-related stuff, all visible parts
+module that handles boot and shutdown sequence
+
+* Kephra::App::Dialog
+
+all dialogs are called from here
+
+* Kephra::App::Part
+
+namespace of the great visual sections of the app
+
+=head2 Kephra::App::Focus
+
+keeps track in which App::Part the Focus wanders to make save way back if needed
+
+* Kephra::App::Panel
+
+wrapper around Wx::Panel + Wx::BoxSizer, helps not to deal with with sizers
+is a stepping stone to the GCL
+
+* Kephra::App::Window
+
 
 * Kephra::Config