Rubberduck | COM add | Parser library
kandi X-RAY | Rubberduck Summary
kandi X-RAY | Rubberduck Summary
The Visual Basic Editor (VBE) has stood still for over 20 years, and there is no chance a first-party update to the legacy IDE ever brings it up to speed with modern-day tooling. Rubberduck aims to bring the VBE into this century by doing exactly that.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of Rubberduck
Rubberduck Key Features
Rubberduck Examples and Code Snippets
Community Discussions
Trending Discussions on Rubberduck
QUESTION
I'm not even going to list the number of duplicate questions on SO about SettingWithCopyWarning. I'm simply attempting to convert a string field to a datetime field for an entire dataframe. Following all the advice I've found using df.loc[]
I'm still getting that error.
Here's the code.
...ANSWER
Answered 2021-Feb-18 at 01:43not the most elegant workaround but considering where your heads at right now I'll suggest using a copy of the dataframe instead. append .copy() to the end of the dataframe when you get the error and it should not cause the error because you're working with the copy and not the actual dataframe, and if you need to you can set the original to the copy later. worked for me and curious if it will work for you.
QUESTION
I just want a quick lookover that I implemented the different fly strategies correctly.
The program simply consists of a duck class that uses an interface for its fly method. The interface has different implementations (namely SimpleFly and NoFly), and a switch statement chooses the correct method based on the specie enum.
As I understand, the strategy pattern is meant to avoid duplicate code between child classes at the same level, which decreases maintainability and extensibility. So instead we abstract out the related algorithms to interfaces and choose them as needed.
CODE:
...ANSWER
Answered 2020-Dec-18 at 20:48I would point out a couple issues of semantics and terminology.
- It's confusing to have a method named
fly
that can be implemented as not flying. Naming the methodtryToFly
or documenting the method as merely an attempt are two ways of addressing this confusion. The software principle to reference here is Liskov Substitution. - The base class does not implement one of the strategies; rather, it composes a strategy. The purpose of the Strategy pattern is to avoid subclassing through composition.
- To reiterate one of the comments,
Duck
should accept an instance ofIFly
directly in its constructor (or a setter method) rather than switching on an enum. Another goal of the Strategy pattern is to avoid branching logic.
The essence of the pattern is that you've avoided creating multiple subclasses of Duck
by instead creating multiple implementations of IFly
. This has the advantage that those IFly
implementations can be reused without a complex inheritance hierarchy, e.g. WILD
and CITY
can share one strategy.
As mentioned in the comments, strategies also have the advantage that a Duck
could change its strategy at runtime. For example, IFly
might be implemented by Soar
and Glide
so that a Duck
would switch between these different strategies depending on the wind.
QUESTION
We have a OSS project and I'm trying to upgrade to Inno Setup 6.0.5. When I compile the build script locally, it works as expected. However, when I try to build it via AppVeyor, it can't find the files. I've tried both:
using full path (this was working with 5.6.1):
...
ANSWER
Answered 2020-Oct-23 at 08:17Although you claim otherwise, you are still using 5.5.9:
Compiler engine version: Inno Setup 5.5.9 (u)
Wildcards in Wizard*ImageFile
directives are supported since Inno Setup 5.6 only.
Though your script seems to install 6.0.5. As it is a different major version, it's in a different path, C:\Program Files (x86)\Inno Setup 6\
rather than C:\Program Files (x86)\Inno Setup 5\
. AppVeyor comes with 5.5.9 preinstalled, which is probably, why, when time comes to run the build script, 5.5.9 gets executed instead. Try using the full path to the iscc
to ensure, that you are running the correct major version of Inno Setup.
QUESTION
I am using next code in an access form, which runs fine:
...ANSWER
Answered 2020-Aug-26 at 10:58The usual rewrite to explicitly access the field is:
QUESTION
I've been building testable MVC logic for my Access database using RubberDuck's answer to Best way to test a MS Access Application? but I'm stuck with the custom event handling. I can't figure out why the OnCreate
event isn't firing.
Form_CreateStudents:
...ANSWER
Answered 2020-Jul-14 at 14:25Quite simple:
frm
is a New [Form_Create Students]
, not the one calling it.
This new form doesn't raise the OnCreate
event. In fact, this new form is not even visible, because you haven't set frm.Visible = True
If you want to set it to the form that just called Run
, pass it:
On the form:
QUESTION
I've been grinding on this issue for quite a few days now and it seems like SwiftUI's relative "newness" doesn't seem to help me with this.
My gut feeling is that I'm somehow using CNContactViewControllerDelegate
wrong but both Apple's documentation as well as other questions on SO make it seem like it should work. Maybe, it is also caused by .sheet
's handling, but I wasn't able to isolate the issue as well. Not wrapping NewContactView
inside NavigationView
also made no difference and removed the default navigation bar (as expected).
I'm showing the CNContactViewController
with init(forNewContact:)
to give the app's users an ability to add new contacts. Persisting and everything works fine, however, none of the delegate's functions seem to get called.
Neither dismissing the modal with the "swipe to dismiss" gesture introduced in iOS 13 calls the delegate function, nor using the navigation buttons provided by CNContactViewController
.
ANSWER
Answered 2020-Jul-01 at 09:31SwiftUI creates coordinator by itself and provides it to representable in context, so just use
QUESTION
About 10 years ago I started refactoring and improving the ChartSeries
class of John Walkenbach. Unfortunately it seems that the original it is not available any more online.
Following the Rubberduck Blog for quite some time now I try to improve my VBA skills. But in the past I only have written -- I guess the experts would call it -- "script-like god-procedures" (because of not knowing better). So I am pretty new to classes and especially interfaces and factories.
Actual QuestionsI try to refactor the whole class by dividing it into multiple classes also using interfaces and than also adding unit tests. For just reading the parts of a formula it would be sufficient to get the Series.Formula
and then do all the processing. So it would be nice to call the Run
sub in the Create
function. But everything I tried so far to do so failed. Thus, I currently running Run
in all Get
properties etc. (and test, if the formula changed and exit Run
than. Is this possible and when yes, how?
Second, to add unit tests -- of course using rubberduck for them -- I currently rely on real Charts
/ChartObjects
. How do I create a stub/mock/fake for a Series
? (Sorry, I don't know the correct term.)
And here a simplified version of the code.
Many thanks in advance for any help.
normal module ...ANSWER
Answered 2020-Apr-20 at 15:20You can already!
QUESTION
We have a script setup to run with Inno Setup Unicode compiler. The installer at the moment supports English, German and French.
It has been brought to our attention that the encoding for our custom messages in French aren't correct. The custom message files are saved as UTF-8 so there should not have been an encoding issue. We verified we were using the Unicode compiler and not ANSI by accident.
Expected Custom message:
French.UninstallOldVersionPrompt=Il semble y avoir une version antérieure de Rubberduck installée sur ce système pour %s.There seems to be a previous version of Rubberduck, qui devra d'abord être désinstallée. Procéder à la désinstallation?
The file is saved as UTF-8, so it shouldn't have had encoding issues. What went wrong?
For more details, you can read up on the Github issue
...ANSWER
Answered 2020-Apr-10 at 08:28The .iss
file needs to have UTF-8 BOM, if it includes Unicode/UTF-8 strings.
In your case, it's the French.CustomMessages.iss
that is missing the BOM.
The German.CustomMessages.iss
has the BOM, that's why it works correctly with German.
The BOM requirement is indeed not documented. But I believe it's clear from the code of TTextFileReader.ReadLine
.
QUESTION
I am trying to implement the suggestions from this post in codereview
Objective:
Manage what happens when users interact with Excel Tables (ListObjects)
The idea at the end is to have custom events for different tables. e.g. When you add a row to table1 the custom AddEvent1 is raised, and when you do the same to table2, AddEvent2 is raised.
There would be only one class to manage the events and one to hold the tables and their information.
So the process suggested is to:
- Add the listobject to a class called
Table
- That class would listen to the events on the parent sheet (
Change
andSelectionChange
) - When a change event is fired, trigger a custom event from a class
TableManager
that handles those events (events likeadding
,updating
ordeleting
rows)
EDIT #1:
Adjusted the code:
- The
Create
function now returns an instance of aTable
- And the property
Set SourceTable
now sets thelistObjectParentSheet
field to the corresponding value
But still the Table Manager
doesn't listen to the event raised in listObjectParentSheet_Change
Components:
1) A Sheet with an Excel Table (ListObject) and the following code behind:
...ANSWER
Answered 2020-Jan-09 at 12:57I tried to repro, but then found that relying on Worksheet.Activate
to register the handler, tends to misbehave: sometimes you need to "wiggle" the sheet so it keeps up, especially if you're editing the code. Could be just that :)
Note that in order to be able to fire AddedNewRow
, AddedNewColumn
, or even RemovedRow
or RemovedColumn
, you'll need to constantly track the size of the table with a mix of Worksheet.Change
and Worksheet.SelectionChange
handlers.
Table class module:
QUESTION
i'm trying to write a test module to test one of the modules I wrote in VBA. In specific, I have a if statement I would like to trigger using the test module by giving the module/funtion the wrong initial parameters. The module/function I would like to test is:
...ANSWER
Answered 2018-Dec-20 at 23:29Change
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install Rubberduck
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page