JetBrains.ReSharper.CodeView
Whether the search results tree and such should be expanded by default.
Formats a declared element into a menu item descriptor, suitable for the GotoByName-style lists.
Formats a declared element into a menu item descriptor, suitable for the GotoByName-style lists.
Controls a , implements the basic services to support async calculation.
Key for the “More” item in the menu.
Fires when the collection is considered dirty and should be recalculated by the implementing model.
Listens for changes in all the affecting properties, groups them, and then fires this aggregate signal.
If the action is available, then the that's added to the end of the list if there're too many items to show is enabled and can be executed. Also, a toolbar button is present to execute this same action.
Executes on the primary thread.
Gets or sets whether the data for the controller to produce the items from is complete.
Affects the property that is True only when and no async action is running.
You cannot set the directly, alter this property value instead.
Reflects the internal async state.
Creates the controller and attaches to the model.
The controller lifetime is also synchronized to the model lifetime. That is, when the model is disposed of, the controller is also disposed of (but not the other way).
The “more…” item at the end of the truncated list.
When the items get dirty (), this function is called on the UI thread right before the thing.
The base implementation clears the collection.
Called when an item is to be executed.
When the items get dirty (), this function is called on the secondary thread.
The function should be checking for every so often.
The filtering string against which the items list should be produced.
Call from time to time, on True, abort immediately.
A function you can use to add items to the output collection in a thread-safe manner. The function checks for the items limit and returns whether more items can be added.
Starts watching for the model's getting dirty.
Contains the code for spawning the async recalculation of the items.
Relays the to the method, filtering out the execution.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
2
The data part of the thing.
Defines what the funcAddItems parameter of the function should do.
Appends a new item or items to the existing items list.
Replaces all the items in the list with the new ones.
There are no async operations running. If needed, one could be started right away, and switch to .
An async operation is currently running. When it completes, we'd go .
If the model gets dirty before the operation completes, we set the state (so that funcIsCancelled starts returning True for the async operation), and wait for the state to become before running a new operation.
The async operation were running when the model state was invalidated. This state holds until the async operation terminates, after which a new one is spawned automatically.
When the user dismisses the GotoByName UI, the pending async operation should be cancelled. This is the terminal state.
Implements the presentation of the Goto By Name functionality that works thru a .
Spawns the Goto By Name -based UI upon the given model.
Disposes of the model when done.
Goto-by-name model that provides data for the UI.
Pending / Ready / Invalid color for the editbox text.
Listen for the Enter key in the editbox.
In case it's pressed when there's no selection (eg when typed a symbol and still calculating in background), wait async for the items to appear in the list, and then execute the first one.
Places the extension control on the menu, which is a checkbox with an optional checkmark and dynamic text.
Sets up the “busy” glyph.
The core part of GotoByName.
Menu title text.
Gets the text on the checkbox (or just the right-hand label, if the is false).
The current filter, against which the model produces the list of filtered menu items, .
This signal is fired on the model by the consumer when a specific menu item should be executed by the model's controller.
Gets or sets whether the checkbox is currently checked.
Gets whether the checker on the checkbox should be visible, or not.
If False, only checkbox text should be visible.
Gets whether the check-box (or just its text, if not ) is visible in the Goto-By-Name UI.
Whether the model is ready, ie the list is complete against the .
If False, then the list is still being calculated in the background.
The current set of menu items that pass the .
Must be modified on the UI thread only.
Toolbar buttons for the menu's title.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
2
Gets or sets the search text that should initially appear in the search edit box.
A filter that specifies which items should be let into the output list.
NOTE: in most cases, you should use , so that to avoid interfering with the internal filtering.
Caches the model created on caches, use the function for getting the lazy-inited items from the cache.
ANDs the given condition with the existing .
The default dummy pass-all filter for the .
Must be a function for the operation to work appropriately.
Gets an either libs or no-libs model, lazy-initializing it as needed.
When the items get dirty (), this function is called on the secondary thread.
The function should be checking for every so often.
The filtering string against which the items list should be produced.
Call from time to time, on True, abort immediately.
A function you can use to add items to the output collection in a thread-safe manner. The function checks for the items limit and returns whether more items can be added.
Gets or sets whether when a solution-only search fails a solution-and-libraries search is performed automatically.
True by default.
Gets the cache elements for the given filter.
Matcher for the names.
Further filters the list of results.
Maximum number of items to return, or 0 if unlimited.
A function to check periodically to abort the lengthy process.
The list of collected elements.
Controls the for various -based items.
See the Create… methods for individual model types.
Inits the instance.
Base ctor param.
Base ctor param.
Base ctor param.
Controller of the for namespaces.
for namespaces.
Controller of the for types (classes, structs, etc).
for types (classes, structs, etc).
Recalculates the complete list of items and shows them in FindResults.
// TODO: use ProgressWindow to make it visual and cancellable
Called when an item is to be executed.
Fetches the cache elements against a matcher.
Called when an item is to be executed.
When the items get dirty (), this function is called on the secondary thread.
The function should be checking for every so often.
The filtering string against which the items list should be produced.
Call from time to time, on True, abort immediately.
A function you can use to add items to the output collection in a thread-safe manner. The function checks for the items limit and returns whether more items can be added.
Called when an item is to be executed.
When the items get dirty, this function is called on the secondary thread.
The function should be checking for every so often.
The filtering string against which the items list should be produced.
Call from time to time, on True, abort immediately.
A function you can use to add items to the output collection in a thread-safe manner. The function checks for the items limit and returns whether more items can be added.
Executes when the Plus Button is clicked, or when the last menu item is executed.
Called when an item is to be executed.
Defines whether the libraries should be included or not when searching for items.
Displays QuickDoc
The Web browser control than renders the content.
Performs layout calculations to eleminate scrolling.
Width of control without line breaks and horizontal scrolling
Performs layoput calculations to eleminate scrolling
Desired control width
Height of control without vertical scrolling
Raises the event.
A that contains the event data.
Text displaying in control. Can be used for hacks
Controller for QuickDocControl. Performs navigation, tracks history. It MUST be explicitly disposed.
Control can be disposed instead of controller.
Creates controller
Solution
Default language to render
Opens current item in VS editor
Updates the entry of control
Raised when control content is updated
Raised when key is pressed. Currenly only Escape passed.
Default language for view
Implements the view that displays a QuickDoc extract from the XmlDoc help on the given declared element.
QuickDock window header height
The initial width of the control.
Fraction of the screen width that can be occupied, at most, by the window when auto-sizing to fit the content horizontally.
Settings key for the QuickDoc window custom width.
Border size, or padding of the Web browser control within the outer form bounds.
Minimum size of the Web browser control, as it wouldn't behave well when size is too small.
Minimum recommended length of the window against the corresponding dimensions. Restores after new content is loaded into the window; temporarily may be scaled down below this value.
The Web browser control than renders the content.
Fires when the control would like to be reasked of its desired size.
.
The size of the form that's recommended so that the browser content fit into the form.
A lazy-init collection of the hit test results that identify the size bars.
Use .
Hit-tests the window areas and returns the result. means the result is unspecified (eg, normal client area or outside the window).
The hit point, in client coordinates.
Inits the instance UI.
Raises the event.
A that contains the event data.
Raises the event.
A that contains the event data.
Gets or sets the QuickDocView custom width global setting.
Gets or sets whether the control should accomodate its size to fit the content when navigating to another documentation.
This mode is turned off for the current instance after the user resizes its manually.
Gets the collection of the hit test results that identify the size bars.
Fires when the control would like to be reasked of its desired size.
Use this constructor
Displays given set of document ranges.
Document ranges to display
Additional highlighters in document ranges
Optional range with scrolled position. DocumentRange.Invalid if no scrolling needed
Displays IDeclaredElement except namespaces with all necessary features.
IDeclaredElement to display.
Additional ranges to highlight.
Displays text range in a project file with all necessary features.
Text range to display.
Project file with given text range
Additional ranges that should be displayed
Displays file except namespaces with all necessary features.
File to display.
Additional ranges that should be displayed
Displays default message about code panel.
TODO: temporary method?
For design-time only
Fired when contents of code panel begin to display new code.
Displays a popup menu list of the recent files.
Displays a popup menu list of the recent edits.
Opens the specified file and navigates to the position in it.
The recent file.
Popup window context to notify about the action, may be Null if N/A.
An edit-like control for placing on the dialog boxes that picks a type name from a tree or completion list.
Gets or sets the settings that define the behavior of the picker, like what it picks and which functionality is available.
Can be set only once.
Gets or sets the text of the editbox the user is typing.
An input string that drives the completion list contents.
Has a grace period before it's applied to the model.
Gets whether the completion list is currently allowed to become visible (should there be any items to show in it).
Controlls the deferred application of the .
Fire the signal to request hiding the menu, which will happen with a little delay.
We open the tree on mouse-down (in which case the click event should be ignored), but in case the button is triggered by keyboard, the click should be processed.
Don't use, call instead.
Don't use, take instead, for lazy-creation.
If menu is shown, selects the given item and applies its text.
Tries to get or create the popup window of the drop-down menu.
Tries to get or create the drop-down menu.
Causes the pending editbox changes to apply immediately to the completion list
Implements menu lazy-creation. Does nothing if already created.
Forcibly hides the menu and prevents it from autopopupping until the user summons it explicitly (optionally).
Releases the unmanaged resources used by the and its child controls and optionally releases the managed resources.
true to release both managed and unmanaged resources; false to release only unmanaged resources.
Determines whether the specified key is an input key or a special key that requires preprocessing.
true if the specified key is an input key; otherwise, false.
One of the key's values.
Raises the event.
A that contains the event data.
Raises the event.
An that contains the event data.
Raises the event.
A that contains the event data.
Gets whether the drop-down menu is currently visible and active.
Whether to attempt creating the entity when requested, or not.
Attempts creating the requested entity.
Might still return Null if failed.
Would not create the requested entity. A Null is returned if not created yet.
A self-contained popup type chooser that can be employed in case you'd like to use the , but have no place to host it as a control and want to show it in a popup dialog.
Gets or sets the settings that define the behavior of the picker, like what it picks and which functionality is available.
Can be set only once.
Gets or sets the text contents of the type chooser.
Raises the event.
The that contains the event data.
Gets or sets the text displayed on the label.
Specifies the configuration for the control.
Gets or sets the flat model that works for completing the text you type into the control.
Can be set only once.
When the tree picker is building its model, supplies the items for the next level.
Fill the list with the children of , who must not be Null.
When is Null, root items are requested.
Gets or sets the presenter for the picker (drop-down tree) items.
This value can only be set once.
When a completion list item is executed, its text is inserted into the edit box.
In case the text should be modified before insertion (eg FQN instead of a short name), this event should be sinked.
When a picker tree item is executed, its text is inserted into the edit box.
In case the text should be modified before insertion (eg FQN instead of a short name), this event should be sinked.
Setting the to Null prevents the item from being picked (eg for group nodes that are only present to hold the child elements).
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
2
Implements the popup (dropdown) of the that displays a tree picker.
Fires when the control would like to be reasked of its desired size.
Checks whether the setting define a model for the drop-down tree picker.
Takes the focused node, tries to execute it by applying the translated text to the property and closing the view.
Raises the event.
A that contains the event data.
Raises the event.
An that contains the event data.
Raises the event.
An that contains the event data.
Performs the bottom-up layouting stage, when the control calculates its desired size using the given constraints.
Should give generally the same results as , but could employ the device context for the sake of optimization.
The device context to measure against.
The maximum available space (that could affect the shape of the control, or strip down unnecessary calculations over the invisible items).
May be a with width and height equal to , which means that the size is not limited.
The desired size, must be no larger than .
Tells the control the details about the new layout applied to it by the controlling entity in conjunction with some .
Typically, the control need not apply the given size and location because that should be done by the controlling entity.
The control may change its presentation in response to the layouting details, for example, whether it's attached to the top or the bottom of the anchoring rect.
The layouting details.
Gets the settings that define the tree and some of its interactions.
Gets a value indicating whether the window will be activated when it is shown.
True if the window will not be activated when it is shown; otherwise, false. The default is false.
Gets or sets whether the control should be activated initially when it's shown.
The typical implementation for a form is to return a negative of this value from the override.
Fires when the control would like to be reasked of its desired size.
Base class for -based choosers.
Those are used for setting up the s.
Gets or sets the filter that narrows down the completion items (in the completion menu).
Can be assigned only once.
Gets or sets the filter that narrows down the picker items (in the drop-down picker tree).
This is usually a superset of the items, as it has to include the nodes that contain the useful items. Items under the excluded nodes are excluded automatically.
Can be assigned only once.
Rip FQ Name from a declared element, in the specified language, suitable for use by the picker owner.
An empty filter to assign by default.
Creates the chooser-specific completion controller.
Gets the declarations cache for the current models (on solution, either libs or no-libs).
Expands the level of the tree picker.
Null for the root.
Inits the plain completion support.
Inits the tree drop-down support.
The language this instance is working in.
Defines whether the libraries should be included or not when searching for items.
Gets the project we're browsing (if specified).
Gets the settings applicable to the .
Gets the solution we're browsing.
Required designer variable.
Clean up any resources being used.
true if managed resources should be disposed; otherwise, false.
Required method for Designer support - do not modify
the contents of this method with the code editor.
Required designer variable.
Clean up any resources being used.
true if managed resources should be disposed; otherwise, false.
Required method for Designer support - do not modify
the contents of this method with the code editor.
Customizes the for choosing namespaces.
Creates settings for supplying into the .
Tries to look up a declared element for its FQ Name in the current .
Creates the chooser-specific completion controller.
Required designer variable.
Clean up any resources being used.
true if managed resources should be disposed; otherwise, false.
Required method for Designer support - do not modify
the contents of this method with the code editor.
Customizes the for choosing types.
Creates settings for supplying into the .
Tries to look up a declared element for its FQ Name in the current .
Creates the chooser-specific completion controller.
DataContext initially passed to action
Candidates for navigation
When implemented in derived type, creates search request and calls SearchRequestExecutor
Data context passed to action
Delegate to call with SearchRequest
Should always be called under readlock and reetrancy guard
This code is modified copy from GotoDeclarationAction.GetCandidates
Navigates to the declaration of the type of a reference expression